Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    152

    Come elimino quest'errore ?

    Ragazzi ho questa pagina php e durante l'esecuzione mi da l'errore sull'inviodati ( Undefined index: inviodati in C:....) Come posso correggerlo??? Aspetto vostre risposte
    Ecco il codice :

    codice:
    <?php
    
    // includiamo il file di connessione al database 
    
    include ('configurazione.php');
    
    
    
    // creiamo il nostro modulo di registrazione
    
    ?>
    
    
    
    <form action='?inviodati=ok' method='POST'>
    
    Nome
    
    <input type='text' name='nome'>
    
    
    NickName
    
    <input type='text' name='nickname'>
    
    
    Mail
    
    <input type='text' name='mail'>
    
    
    Password
    
    <input type='password' name='pass'>
    
    
    Ripeti Password
    
    <input type='password' name='pass2'>
    
    
    <input type='submit' value='Completa Registrazione'>
    
    
    </form>
    
    
    
    <?php
    
    // attraverso un if controlliamo che il form sia stato inviato 
    
    if ( $_GET['inviodati'] == "ok" ) {
    
    
    
    // recuperiamo i dati inviati con il form
    
    
    $nome = $_POST['nome'];
    
    $nickname = $_POST['nickname'];
    
    $mail = $_POST['mail'];
    
    $pass1 = $_POST['pass'];
    
    $pass2 = $_POST['pass2'];
    
    
    // ora controlliamo che i campi siano stati tutti compilati
    
    if ( $nome == TRUE && $mail == TRUE && $nickname == TRUE && $pass1 == TRUE && $pass2 == TRUE )  {
    
    
    // controlliamo se il campo mail è stato scritto in maniera errata
    
    
    $email = preg_match("^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$^",$mail); 
    
    if ( $email == TRUE ) {
    
    
    
    // controlliamo se l'mail è presente già nel database
    
    $sql = mysql_query("SELECT * FROM tabella_registrati WHERE mail = '$mail'") or die ("Mail già occupata");
    
    $num_rows = mysql_num_rows($sql); 
    
    if ( $num_rows == 0 ) {
    
    // ora controlliamo che le password inserite siano identiche
    
    if ( $pass1 == $pass2 ) {
    
    
    // infine criptiamo la password con md5
    
    $pass_md5 = md5($pass1);
    
    $nickname = mysql_real_escape_string($nickname);
    
    $nome = mysql_real_escape_string($nome);
    
    mysql_query("INSERT INTO tabella_registrati
                 (nick , nome , pass , mail )
                 VALUES 
                 ('$nickname', '$nome', '$pass_md5', '$mail' )") OR DIE(mysql_error());
    
    
    
    // messaggio da far visualizzare all'utente finale
    
    echo "Complimenti registrazione effettuata con successo.";
    
    
    } else {
    
    echo "Le password non corrispondono";
    
    
    }
    
    } else {
    
    echo "Indirizzo mail già utilizzato.";
    
    }
    
    } else {
    
    echo "La tua mail non è idonea, per la registrazione.";
    
    }
    
    
    } else {
    
    echo "Tutti i campi sono obbligatori.";
    
    }
    
    
    
    }
    
    ?>

  2. #2
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Credo ti dia problemi $_GET['inviodati']
    Per gli Spartani e Sparta usa spartan Il mio github

  3. #3
    Utente di HTML.it L'avatar di Laxus
    Registrato dal
    Oct 2010
    Messaggi
    251
    sostituisci if ( $_GET['inviodati'] == "ok" ) con if ( isset( $_GET['inviodati'] ) AND $_GET['inviodati'] == "ok" )

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    152
    Grazie mille...risolto!!!

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.