• Super User

    Upload immagini

    :mmm: :mmm: Questo mi è davvero strano...
    Stesso server, ma due domini diversi: sul primo dove avevo caricato lo script di test funziona l'upload immagini, sul secondo no... e non c'è nessun parametro col nome di dominio... :():

    Questo il codice della FORM:

    <form method="POST" name="upload" action="?step=2&img=1" enctype="multipart/form-data">
    <table border="0" width="50%">
    <tr>
    <td>Foto da caricare:</td>
    <td><input size="20" type="file" name="immagine" value=""></td>
    </tr>
    <tr>
    <td>Titolo:</td>
    <td><input size="20" type="text" name="title" value=""></td>
    </tr>
    <tr>
    <td colspan="2"><input type="submit" name="Carica" value="Carica"></td>
    </tr>
    </table>
    </form>
    ```Questo il codice a INIZIO della pagina:
    

    if($_GET['step']==2 AND $_GET['img']==1){
    // Qui effettuo l'upload dell'immagine
    $uploaddir = 'photo/'; // CHMOD 777 - già controllato!!
    // Path completo
    $uploadfile1=$uploaddir."temp.jpg";
    if(move_uploaded_file($HTTP_POST_FILES['immagine']['tmp_name'], $uploadfile1)){ $ok=1; }

    echo 'aaaa';
    exit();
    }

     
    Che può essere????

  • User Attivo

    Forse modificando questa così :
    [php]if(move_uploaded_file($_FILES['immagine']['tmp_name'], $uploadfile1)){ $ok=1; }[/php]Se non mi sbaglio $HTTP_POST_FILES non è più supportato in php5...
    Comunque, se vuoi gestire al meglio i tuoi upload ti consiglio questo mio script(il post seguente aggiunge anche una innovazione).
    Link
    Ola!


  • Super User

    @ilnetsurfer said:

    Forse modificando questa così :
    [php]if(move_uploaded_file($_FILES['immagine']['tmp_name'], $uploadfile1)){ $ok=1; }[/php]
    :yuppi:Grande, così funziona!!
    Resta sempre il dubbio di perchè sullo stesso server ho due comportamenti opposti, ma ci penserò un'altra volta... 😉
    Se hai qualche idea comunque anche riguardo a questo ti ascolto!


  • User Attivo

    Beh, se hai questo risultato dal server, credo sia perchè su un server hai installato PHP 5 e su un altro server PHP 4...
    Potresti fare una semplice if così :
    [PHP]if(substr(phpversion(),0,1) == 5){
    $file = $_FILES['immagine'];
    }else{
    $file = $HTTP_POST_FILES;
    }[/PHP]


  • Super User

    @ilnetsurfer said:

    Beh, se hai questo risultato dal server, credo sia perchè su un server hai installato PHP 5 e su un altro server PHP 4...
    E' lo stesso server, la stessa macchina fisica, dunque l'installazione di PHP è quella, dunque uguale sui 2 domini... Boh! :mmm:

    Comunque l'importante è aver risolto! 😉