Newsgroup: it.comp.www.php
Titolo: problema con upload

ciao a tuttti,
ho creato una pagina php per fare upload di immagini.
Tutto funzione in locale ma quando provo la pagina in aruba mi da errore, o
meglio mi fallisce l'upload.
ecco il codice:
$directory = $_POST['directory'];
$subdir = $_POST['subdir'];
$uploaddir = './image/'. $directory .'/'. $subdir .'/';
print "<pre>";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir .
$_FILES['userfile']['name'])) {
    print "Il file è valido, e inviato con successo.\n";
print_r($_FILES);
} else {
 print "Possibile attacco tramite file upload! Alcune informazioni:\n";
print_r($_FILES);
}
etc etc etc
quando provo la pagina in web mi scrive "Possibile attacco tramite file
upload! Alcune informazioni:".
In locale non mi da nessun tipo di problema::::AIUTO!

 file upload! Alcune informazioni:".
error_reporting? display_errors?
IMHO c'e' qualche cosa che non va se dopo " Alcune informazioni:" non
visualizza nemmeno un "Array ()".
Posta il codice della form.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.

questo è la pagina form.php:
<form enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="150000">
Invia questo file: <input name="userfile" type="file"><br>
Su questa directory:
<select name="directory">
  <option>atelier</option>
  <option>double</option>
  <option>face</option>
  <option>onlyone</option>
</select>
che tipo di file:
<select name="subdir">
  <option>normali</option>
  <option>icone</option>
</select>
<input type="submit" value="Invia File">
</form>
e questo il file upload.php:
<?php
// Nelle versioni di PHP precedenti alla 4.1.0 si deve utilizzare
$HTTP_POST_FILES anzichè $_FILES.
// Nelle versioni di PHP precedenti alla 4.0.3, si utilizzi copy() e
is_uploaded_file() anzichè move_uploaded_file
$directory = $_POST['directory'];
$subdir = $_POST['subdir'];
$uploaddir = './image/'. $directory .'/'. $subdir .'/';
 print "<pre>";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir .
$_FILES['userfile']['name'])) {
    print "Il file è valido, e inviato con successo.\n";
print_r($_FILES);
} else {
 print "Possibile attacco tramite file upload! Alcune informazioni:\n";
print_r($_FILES);
}
?>
ecco cosa mi viene visualizzato a video al posto quando dalla pagina
form.php clicco su submit:
Possibile attacco tramite file upload! Alcune informazioni:
Array
(
    [userfile] => Array
        (
            [name] => 7.jpg
            [type] => image/pjpeg
            [tmp_name] => C:\PHP\uploadtemp\phpEBD.tmp
            [error] => 0
            [size] => 2279
        )
)
RIBADISCO! nel mio pc portatile tutto funziona alla meraviglia!
Help please!
"Setec Astronomy" <setec@_NO_NOSPAM_freemail.it> ha scritto nel messaggio
news:UG4oe.41670$795.1...@twister1.libero.it...


 
Questi dati sembrano dimostrare che l'upload e' avvenuto correttamente
(vedi [error] => 0), per cui il problema dovrebbe essere in
move_uploaded_file.
[mi quoto]
error_reporting? display_errors?
[/mi quoto]


 
Questi dati sembrano dimostrare che l'upload e' avvenuto correttamente
(vedi [error] => 0), per cui il problema dovrebbe essere in
move_uploaded_file.
[mi quoto]
error_reporting? display_errors?
[/mi quoto]
-- 


 > [mi quoto]> error_reporting? display_errors?> [/mi quoto]> > --
display_errors On On
error_reporting 341 341

Mr.Triathlon wrote:

in testa al codice..
error_reporting(E_ALL);
e poi esamina cosa lo script restituisce..
-- 
www.iuz-lab.info


 ecco cosa mi restituisce:
./image/atelier/normali/ esiste
Warning:  move_uploaded_file(./image/atelier/normali/7.jpg): failed to open
stream: Permission denied in XXX\upload.php on line 33
Warning:  move_uploaded_file(): Unable to move
'C:\PHP\uploadtemp\php1175.tmp' to './image/atelier/normali/7.jpg' in
XXX\upload.php on line 33
Possibile attacco tramite file upload! Alcune informazioni:Array(
    [userfile] => Array        (            [name] => 7.jpg
            [type] => image/pjpeg
            [tmp_name] => C:\PHP\uploadtemp\php1175.tmp            [error]
=> 0
            [size] => 2279        ))
dove XXX ovviamente è il percorso del sito.

 to open stream: Permission denied in XXX\upload.php on line 33
CVD
Controlla i permessi della directory di destinazione. Comunque prova ad
inserire anche un path assoulto come destinazione.


"Setec Astronomy" <setec@_NO_NOSPAM_freemail.it> ha scritto nel messaggio
news:fjyoe.134055$IN.23...@twister2.libero.it...

anch'io immaginavo fosse per quel motivo ma con filezilla non riesco a
cambiare i permessi della cartella che attualmente sono:
drwxr-xr-x
come posso fare per cambiare i permessi .
Ho provato con -->tasto destro sulla cartella-->Attributi File e impostare
il valore numerico a 777 ma il log di filezilla mi scrive:
Comando: SITE CHMOD 777 /
nomesito.com/image/atelier/icone
Risposta: 500 Unknown command.

 Risposta: 500 Unknown command.
Sei su un server Windows? Se la risposta e' si, non puoi cambiare gli
attributi della cartella con l'FTP.


"Setec Astronomy" <setec@_NO_NOSPAM_freemail.it> ha scritto nel messaggio
news:Wm2pe.46057$795.1...@twister1.libero.it...

AZZ!!! ma allora come si fa...?ma mi sembra impossibile che non si possa,
proverò a scrivere a aruba allora!
thanks again

 possa, proverr a scrivere a aruba allora!
Guarda che e' una strafaq di aruba questa. Sui server Windows esiste
una sola cartella dove puoi fare l'upload in quanto dispone dei
privilegi di scrittura necessari. Cerca sui forum di supporto di aruba.
-- 
I am what I am, I do what I can
