Uplod di immagine caricata in una cartella scelta dall'utente

gemeni89

Nuovo Utente
19 Dic 2007
1
0
0
Ciao a tutti... Non riesco a trovare il modo di fare l'upload di una immagine in una cartella già presente nel server scelta dall'utente questo il mio codice:
1) Il seguente codice è la mia upload_index.php dove l'utente inserisce l'immagine presente nel suo pc e nella select selzionare la cartella. Vorrei che con il bottone Carica immagine il file upload.php inserisca nella cartella selezionata l'immagine desiderata qualcuno mi può aiutare? ecco il codice:
PHP:
<h2>Carica Immagini</h2>
        <p align="left">
                <form action="upload.php" method="post" enctype="multipart/form-data" target="_blank">
                <!-- Campo file di nome "image" -->
                <input name="image" type="file" size="40" />
                    <select name="album" onchange="updateOtherAlbum(this)">
                        <option value="">Inserisci l'album</option>
                        <?php
                            $directory = "immagini";
                            $cont=1;
                            $open_handle = opendir($directory);
                            while($read = readdir($open_handle)) {
                                if($read != "." && $read != ".." && $read != "Thumbs.db") {
                                $nome[$cont]=$read;
                                echo '<option value="'.$read.'">'.$read.'</option>';
                                $cont=$cont+1;
                                }
                                }
                        ?>
                    </select>
                <br /><br />
                <!-- Pulsante -->
                <input name="upload" type="submit" value="Carica immagine" />


2) qui il codice di upload.php
codice PHP:
PHP:
do {
        list($width, $height, $type, $attr) = getimagesize($_FILES['image']['tmp_name']);
        if (($type!=1) && ($type!=2) && ($type!=3)) {
              $msg = "<p>Formato non corretto!!</p>";
            $Controllo=1;
              break;
        }
        if (file_exists('immagini/'.$_FILES['image']['name'])) {
              $msg = "<p>File già esistente sul server. Rinominarlo e riprovare.</p>";
            $Controllo=1;   
        break;
        }
        if (!move_uploaded_file($_FILES['image']['tmp_name'], 'immagini/'.$_FILES['image']['name'])) {
              $msg = "<p>Errore nel caricamento dell'immagine!!</p>";
            $Controllo = 1;
        break;
        }
        } while (false);
        if($Controllo != 1){
            $directory = "immagini";
            $open_handle = opendir($directory); 
            while($read = readdir($open_handle)) {
            if($read != "." && $read != ".." && $read != "Thumbs.db" && $read ==$_FILES['image']['name']) {
            echo '<p align="center"><a href="./immagini/'.$read.'"><IMG border="0" height="230" width="230" src="./immagini/'.$read.'"></p>'; } }
            closedir($open_handle);
            
            echo '<div align="center"><h2>Immagine caricata con successo</h2></div>';
        } else {
        echo $msg;
        }

Grazie scusate se pecco in chiarezza ciao
 
se ho capito bene vorresti che gli utenti possano caricare il file all'interno di una delle sottocartelle di "immagini".
Il contenuto della cartella principale viene letto dal ciclo, quindi inviato tramite post, il valore di riferimento dovrebbe quindi essere $_POST['album'].

Quindi $_POST['album'] dovrebbe essere il nome di una sottocartella di "immagini"; dovremmo avere allora:

PHP:
if (file_exists('immagini/'.$_POST['album'].'/'.$_FILES['image']['name'])) { ...
etc.
 

Discussioni simili