Ciao a tutti, ho un problema con un upload php che non riesco a spiegarmi.
Ho un sito dove vengono caricate immagini da un pannello di controllo, dal mio pc riesco tranquillamente a caricarle, a prescindere dal browser che uso.
Dal pc del cliente, con qualsiasi browser, dà problemi.
In breve il codice che utilizzo è questo
$foto = $_FILES['foto']['tmp_name'];
$fotonome = $_FILES['foto']['name']; //lo metto ma poi non lo uso
if($foto!=""){
$url = time().".jpg";
$upload_directory = $_SERVER["DOCUMENT_ROOT"].'/img/'.$url;
move_uploaded_file($foto,$upload_directory);
chmod($upload_directory,0644);
}
la cosa assurda che avviene è questa
se io carico il file (ad esempio Inverno.jpg) con questo codice il nome del file caricato sarà ad esempio 1234264963.jpg, mentre il cliente quando carica, nonostante non estraggo il nome reale del file, me lo fa diventare 1234264963Inverno[].jpg, con le parentesi quadre, e questo crea problemi.
Non ho alcuna idea del perche avviene.Non posso mettere mani ne sul server ne sul pc del cliente, i permessi di scrittura sono tutti messi e non dipende dal browser perche da lò stesso problema con qualsiasi uso. Vorrei solo impedirgli di mettere il nome del file con le parentesi quadre perche i problemi nascono da li, in quanto non carica l'immagine e i log apache dice "file does not exist"
Spero qualcuno abbia affrontato un problema simile, ciao![]()