Ciao ragazzi, da qualche giorno ho la necessità di usare uno script per l'upload di file sul mio sito.
Lo script funziona così, io carico il file e poi mi esce il link che solitamente è nomesito. it / nomefilecaricato
Bene. Io vorrei che questo script generi un nuovo nome per il file caricato (anche numeri a caso, non è importate) in modo da avere un nome diverso dall'immagine o file caricato.
Es. io carico una cartella che si chiama "Nuova Cartella" quindi nomesito.it/nuova-cartella
Invece dovrebbe essere nomesito.it//8i8983 (ovvero numeri a caso)
Questo è il codice
[PHP]<? $dimensione_massima=1551200; //dimensione massima consentita per file in byte -> 1024 byte = 1 Kb $dimensione_massima_Kb=$dimensione_massima/1024; $cartella_upload="public/"; //cartella in cui eseguire l'upload (controllare permessi scrittura) // percorso cartella relativo $cartella_upload="../public/"; $filtrare=1; //filtrare x estensioni ammesse? 1=si 0=no $array_estensioni_ammesse=array('.jpg','.torrent','.gif','.png'); //estensioni ammesse if(!isset($_FILES['file1']) || $_FILES['file1']==0){ echo "Nessun file selezionato per l'upload"; }elseif($_FILES['file1']>$dimensione_massima){ echo "Il file selezionato per l'upload supera dimensione massima di $dimensione_massima_Kb Kb"; }else{ $nome_file=$_FILES['file1']['name']; $errore=""; if($filtrare==1){ $estensione = strtolower(substr($nome_file, strrpos($nome_file, "."), strlen($nome_file)-strrpos($nome_file, "."))); if(!in_array($estensione,$array_estensioni_ammesse)){ $errore.="Upload file non ammesso. Estensioni ammesse: ".implode(", ",$array_estensioni_ammesse)."<br/>"; } } if(!file_exists($cartella_upload)){ $errore.="La cartella di destinazione non esiste</br>"; } if($errore==""){ if(move_uploaded_file($_FILES['file1']['tmp_name'], $cartella_upload.$_FILES['file1']['name'])){ chmod($cartella_upload.$_FILES['file1']['name'],0777); //permessi per poterci sovrascrivere/scaricare echo "Operazione eseguita con successo. Upload riuscito.<br><a href='".$cartella_upload.$_FILES['file1']['name']."'>QUI IL FILE</a>"; }else{ echo "Impossibile effettuare l'upload del file"; } }else{ echo $errore; } } ?> <p><a href="#">INDIETRO</a></p>[/PHP]