• User

    is_uploaded_file restituisce false

    Salve, ho uno scriptino molto semplice per caricare immagini in una cartella del mio sito che non funziona e questo lo attesta anche la funzione is_uploaded_file().

    premetto che la cartella in cui viene eseguito lo script che la cartella dove andranno salvate le immagini hanno i permessi settati al 777.

    il form:
    [html]
    <form action="chisiamo_modslave.php" method="post" enctype="application/x-www-form-urlencoded" id="chisiamo">
    <fieldset>
    <legend>Modifica i dati relativi a <?php echo $messaggio['nome']; ?></legend>
    <label for="nome">Nome e Cognome: </label><input id="nome" name="nome" type="text" value="<?php echo $messaggio['nome'] ?>"/><br />
    <label for="numero">Cellulare: </label><input id="numero" name="numero" type="text" value="<?php echo $messaggio['numero'] ?>"/><br />
    <label for="mail">e-mail: </label><input id="mail" name="mail" type="text" value="<?php echo $messaggio['mail'] ?>"/><br />
    <label for="descrizione">Descrizione: </label><textarea name="descrizione" id="descrizione" cols="90" rows="15"><?php echo $messaggio['descrizione'] ?></textarea><br />
    <label>Vecchia foto: </label> <?php if ($messaggio['foto'] != "")
    {
    echo "<img src="foto/".$messaggio['foto']."" border="0" />";
    echo "<br />";
    echo "<input type="checkbox" name="cancella" id="cancella" value="1">";
    echo "elimina immagine (l?articolo non conterrà nessuna immagine)";
    }
    else
    { echo "Non era stata inserita nessuna immagine."; }
    ?><br />
    <label for="imgnu">Nuova foto: </label><input name="imgnu" type="file" class="testo" id="imgnu" /><br />
    <input name="foto" type="hidden" id="foto" value="<?php echo $messaggio['foto']; ?>" />
    <input name="id" type="hidden" id="id" value="<?php echo $id ?>" />
    <div id="tasti"><input type="submit" name="Submit" value="Salva" /> <input type="reset" name="reset" value="Cancella tutto" /></div>
    </fieldset>
    </form>
    [/html]il codice del chisiamo_modslave.php:
    [php]
    if($_POST['cancella'] != 1)
    {

    if($_POST['imgnu'] != "")
    {
        include ("img_mod.php"); //script per caricare  le immagini e i file
    }
    else
    {
        $nomefb = $_POST['foto'];
    }
    

    }
    else
    {
    $nomefoto = "foto/".$_POST['foto'];
    unlink($nomefoto);
    $nomefb = "";
    }

    [/php]il codice di img_mod.php:
    [php]
    error_reporting (E_ALL);
    $msg = "immagine caricata con successo";
    if (is_uploaded_file($_FILES['imgnu']['tmp_name'])) {
    // Ottengo le informazioni sull'immagine
    list($width, $height, $type, $attr) = getimagesize($_FILES['image']['tmp_name']);
    // Controllo che le dimensioni (in pixel) non superino 160x180
    if (($width > 3000) || ($height > 3000)) {
    ...
    [/php]non entra dentro il primo if quindi la funzione is_uploaded_file() restiusce false.
    l'error_reporting mi segnala:
    Notice: Undefined index: imgnu in /home/mhd-01/w w w.scarpinato.it/htdocs/ep_media/gestione/img_mod.php on line 4

    che ci sia un problema con il provider?


  • User

    [PHP]
    <?php
    echo $_FILES['imgnu']['name'];
    echo $_FILES['imgnu']['type'];
    echo $_FILES['imgnu'];
    echo $_FILES['imgnu']['tmp_name'];
    echo $_FILES['imgnu']['error'];
    echo $_POST['imgnu'];
    ?>
    [/PHP]

    restituisce solo e soltanto il nome dell'immagine grazie all'echo del $_POST

    😢


  • User Attivo

    Prova questo codice:

    [php]<form enctype="multipart/form-data" action="" method="POST">
    Send this file: <input name="imgnu" type="file" />
    <input type="submit" value="Send File" />
    </form>
    <?php
    if (isset($_FILES['imgnu'])) {
    var_dump(is_uploaded_file($_FILES['imgnu']['tmp_name']));
    }
    ?>[/php]


  • User

    Non restituisce alcunché :arrabbiato:


  • User Attivo

    Che cosa intendi per "Non restituisce alcunché"?
    Hai selezionato un file e cliccato su Send File?
    Se visualizzi il sorgente restituito al browser, noti qualcosa di strano?