Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 29

Discussione: validare i campi

  1. #1

    validare i campi

    ragazzi mi date una mano a capire come validare i campi del modulo, grazie in anticipo

    Codice PHP:

    // connessione al database 

    $db            mysql_connect ($db_host$db_user$db_password); 
    $db_forum      mysql_select_db ($db_name$db); 

    // controllo i campi 


    // query di inserimento 

    $query         "INSERT INTO `registrati` (nome, cognome, email, indirizzo, citta, provincia, cap, nazione, telefono, fax, reg, piva, data) 
                      VALUES ('"
    .$_POST['nome']."', '".$_POST['cognome']."', '".$_POST['email']."', '".$_POST['indirizzo']."', '".$_POST['citta']."', '".$_POST['provincia']."', '".$_POST['cap']."',  '".$_POST['nazione']."',  '".$_POST['telefono']."',  '".$_POST['fax']."',  '".$_POST['reg']."',  '".$_POST['piva']."', '".date('Y-m-d H:i:s')."')"




    $query2         "INSERT INTO `news` (nome, cognome, email,  data) 
                      VALUES ('"
    .$_POST['nome']."', '".$_POST['cognome']."', '".$_POST['email']."',  '".date('Y-m-d H:i:s')."')"

    // esecuzione della query 

    $query_results mysql_query($query) or die("error=1"); 
    $query_results2 mysql_query($query2) or die("error=1"); 

    echo(
    'Registrazione avvenuta, 
        
    I tuoi dati sono stati inseriti correttamente, attendi 5 secondi e sarai reindirizzato alla Homepage 
     '
    ); 
    echo 
    '<meta http-equiv="refresh" content="7;url=http://www.miosito.com/web2/regist/login.php">';

    ?> 

    avevo provato ad aggiungere questo nella riga // controllo i campi.

    Codice PHP:

    if (isset($_POST['invio'])) { // Se è stato premuto il tasto invio prosegue.
       // Prendo il contenuto dai campi nome e cognome del form:
       
    $nome $_POST['nome'];
       
    $cognome $POST['cognome'];

       
    // Validazione di nome e introduzione della variabile $errore.
       
    $errore 0;
       if (
    $nome === ""$errore 1;
       if (
    $cognome === ""$errore 2;
       
       
    // Controllo d'errore.
       
    switch {$errore) {
          case 
    0// non c'è errore fa qualcosa.
          
    case 1$msg 'Hai dimenticato di inserire il tuo nome!';
          case 
    2$msg 'Non hai inserito il tuo cognome!';
          default: 
    $msg 'Non hai riempiti i campi, non posso inviare.';
       } 
    // fine selezione di tipo.
    // fine condizione iniziale. 
    ma non funziona.

  2. #2
    quanti = hai meso negli if??
    il blocco mi pare giusto se nonper il fatto che devi mettere

    if ($nome == "") $errore = 1;
    if ($cognome == "") $errore = 2;

    in più nello switch hai aperto una { quando serve una (
    Ubuntu rulez!! :P

  3. #3
    ciao simotenax e grazie, ho messo cosi'
    Codice PHP:

    // connessione al database 

    $db            mysql_connect ($db_host$db_user$db_password); 
    $db_forum      mysql_select_db ($db_name$db); 

    // controllo i campi obblicatori
    if (isset($_POST['invio'])) ( // Se è stato premuto il tasto invio prosegue. 
       // Prendo il contenuto dai campi nome e cognome del form: 
       
    $nome $_POST['nome']; 
       
    $cognome $POST['cognome']; 

       
    // Validazione di nome e introduzione della variabile $errore. 
       
    $errore 0
       if (
    $nome == ""$errore 1
       if (
    $cognome == ""$errore 2
        
       
    // Controllo d'errore. 
       
    switch ($errore) ( 
          case 
    0// non c'è errore fa qualcosa. 
          
    case 1$msg 'Hai dimenticato di inserire il tuo nome!'
          case 
    2$msg 'Non hai inserito il tuo cognome!'
          default: 
    $msg 'Non hai riempiti i campi, non posso inviare.'
       ) 
    // fine selezione di tipo. 
    // fine condizione iniziale.


    // query di inserimento 
    pero' mi da errore alla riga $nome = $_POST['nome'];

    syntax error, unexpected ';'

  4. #4
    ti consiglio di controllare bene parentesi e punteggiatura prima di postare codice, anche se capisco benissimo come le prime volte sia difficile accorgersi degli errori

    ecco qui il codice corretto:

    Codice PHP:

    // connessione al database

    $db            mysql_connect ($db_host$db_user$db_password);
    $db_forum      mysql_select_db ($db_name$db);

    // controllo i campi obblicatori
    if (isset($_POST['invio'])) { // Se è stato premuto il tasto invio prosegue. //qui c'era una ( invece di {
       // Prendo il contenuto dai campi nome e cognome del form:
       
    $nome $_POST['nome'];
       
    $cognome $_POST['cognome']; //qui era scritto $POST

       // Validazione di nome e introduzione della variabile $errore.
       
    $errore 0;
       if (
    $nome == ""$errore 1;
       if (
    $cognome == ""$errore 2;
        
       
    // Controllo d'errore.
       
    switch ($errore) { //qui c'era una ( invece di {
          
    case 0// non c'è errore fa qualcosa.
          
    case 1$msg 'Hai dimenticato di inserire il tuo nome!';
          case 
    2$msg 'Non hai inserito il tuo cognome!';
          default: 
    $msg 'Non hai riempiti i campi, non posso inviare.';
       } 
    // fine selezione di tipo. //qui c'era una ) invece di }
    // fine condizione iniziale. //qui c'era una ) invece di }


    // query di inserimento 
    Ubuntu rulez!! :P

  5. #5
    ciao e scusami ancora, ho messo il codice tuo, non da errore pero' mi va alla pagina registrazione avvenuta anche senza compilare i campi

    e come se il controllo non lo facesse

  6. #6
    figurati non ti devi scusare di nulla

    comunque il funzionamento che hai riscontrato è giusto, il problema sta sulla condizione iniziale

    Codice PHP:
    if (isset($_POST['invio']) 
    questo secondo me non è stato settato da nessuna parte quindi non esegue niente del codice..

    invece di quello scritto sopra scrivi questo:

    Codice PHP:
    if (isset($_POST[]) 
    Ubuntu rulez!! :P

  7. #7
    ciao, dici di non scusarmi quelli come voi vanno premiati per la pasienza.. comunque da errore in quella riga


    Fatal error: Cannot use [] for reading in

    c'èra una ) in meno sembra e lo' corretta

  8. #8
    allora togli le parentesi quadre
    Ubuntu rulez!! :P

  9. #9
    adesso da questo

    Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ')' in

  10. #10
    if (isset($_POST))
    Ubuntu rulez!! :P

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.