Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Notice: Undefined index: foto in /membri/knoweveryone/modifica_foto2.php on line 24

    Salve a tutti,
    ho scritto uno script php che mi dovrebbe permettere di caricare una foto in una cartella di uno spazio web e poi salvare il nome in una tabella di un database mysql.
    Il problema è che, quando lo testo mi dà due errori:
    1° "Notice: Undefined index: foto in /membri/knoweveryone/modifica_foto2.php on line 24"

    2° "Notice: Undefined index: foto in /membri/knoweveryone/modifica_foto2.php on line 25"

    Ecco il codice php dello script:
    Codice PHP:
    <?php 
    include 'header.php'
    session_start();
    error_reporting(E_ALL);
    ?>
    <html>
    <head>
    </head>
    <body>
    <?php 


                
    if(!isset($_POST['invia'])){ ?>
    <form method="post" action="#" id="formfoto" style="alignment-adjust:center">
    <input type="file" name="foto" id="foto" />
    <input type="submit" name="invia" id="invia" value="Salva">
    <input type="button" onclick="window.location='infopersonali_modificadati.php'" name="indietro" id="indietro" value="Indietro"/>
    </form>
    </body>
    </html>

    <?php
    } else {
            
    $fotomysql_real_escape_string($_FILES["foto"]["name"]);
                if(
    is_uploaded_file($_FILES['foto']['tmp_name'])){
                list(
    $type) = getimagesize($_FILES['foto']['tmp_name']);
                if ((
    $type != 1) && ($type != 2) && ($type != 3)){
            echo 
    "File non supportato!";
            
        } elseif (
    files_exists("uploads/"$_FILES['foto']['name'])){
            echo 
    "Il file è già presente sul server. Rinominarlo e riprovare!";
        } else {
                
    move_uploaded_file($_FILES['foto']['tmp_name'], 'uploads/' $_FILES['foto']['name']);
                
    $foto $_FILES['foto']['name'];
                
    $query="UPDATE utenti SET foto='".$foto."' WHERE  username='".$_SESSION['utente']."'"
                
    $invia=mysql_query($query) or die(mysql_error());
            }
        }
    }
    ?>
    Grazie a tutti in anticipo per il vostro aiuto,
    cicciaramba.

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Aggiungi l'enctype al form e controlla al posto di $_POST['invia'] che $_FILES['foto'] sia settata

    codice:
    <form method="post" action="#" id="formfoto" style="alignment-adjust:center" enctype="multipart/form-data">

  3. #3
    Originariamente inviato da RoTeam
    Aggiungi l'enctype al form e controlla al posto di $_POST['invia'] che $_FILES['foto'] sia settata

    codice:
    <form method="post" action="#" id="formfoto" style="alignment-adjust:center" enctype="multipart/form-data">
    Perfetto ora funziona
    C'è però il problema che quando carico un file .jpg mi dice file non supportato, sai a quale numero corrisponde in php questa estensione?
    Grazie ancora.

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da cicciaramba
    Perfetto ora funziona
    C'è però il problema che quando carico un file .jpg mi dice file non supportato, sai a quale numero corrisponde in php questa estensione?
    Grazie ancora.
    perché col type? fai un semplice explode dei . e guarda il valore dell'ultimo elemento controllando l'estensione e il size del file uppato

  5. #5
    Originariamente inviato da RoTeam
    perché col type? fai un semplice explode dei . e guarda il valore dell'ultimo elemento controllando l'estensione e il size del file uppato
    Mi faresti un esempio?
    Grazie ancora.

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da cicciaramba
    Mi faresti un esempio?
    Grazie ancora.
    Codice PHP:
    $estensione explode('.',$_FILES['foto']['name']);

    if(!
    in_array(end($estensione),array('jpg','png','gif'))) echo 'estensione invalida';

    if(
    $_FILES['foto']['size']>102400) echo 'il file non deve superare 100kb'
    Un esempio banale, ma provate a farle da soli le cose...

  7. #7
    Originariamente inviato da RoTeam
    Codice PHP:
    $estensione explode('.',$_FILES['foto']['name']);

    if(!
    in_array(end($estensione),array('jpg','png','gif'))) echo 'estensione invalida';

    if(
    $_FILES['foto']['size']>102400) echo 'il file non deve superare 100kb'
    Un esempio banale, ma provate a farle da soli le cose...
    Scusa, ma volevo solo un piccolo esempio per capire visto che non le ho mai usate.
    Ora invece mi dà questo errore: Fatal error: Call to undefined function files_exists() in /membri/knoweveryone/modifica_foto2.php on line 30
    A cosa può essere dovuto?
    Grazie ancora e scusa per il disturbo

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da cicciaramba
    Scusa, ma volevo solo un piccolo esempio per capire visto che non le ho mai usate.
    Ora invece mi dà questo errore: Fatal error: Call to undefined function files_exists() in /membri/knoweveryone/modifica_foto2.php on line 30
    A cosa può essere dovuto?
    Grazie ancora e scusa per il disturbo
    è file_exists non files_exists

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.