Visualizzazione risultati 1 fino 9 di 9

Discussione: Inserimento dati tabella mysql

  1. #1
    Guest

    Predefinito Inserimento dati tabella mysql

    Ciao ragazzi,
    Ho tre pagine .php ed una tabella con 4 campi (id,nome,cognome,email)
    La prima pagina serve per accedere nella seconda pagina protetta che servirà per registrare i 4 dati tramite 4 form separati (id,nome,cognome,email). questi ultimi poi andranno elaborati dalla terza pagina con il codice per inserirli nel database..
    La prima pagina non mi da problemi, la seconda e la terza si...
    il codice della terza è questo

    Codice:
    <?php 
    $db_host = "localhost"; 
    $db_user = "xxxxxxxx"; 
    $db_password = "xxxxxxxx"; 
    $db_database = "xxxxxxx"; 
    $db_tabella = "clienti"; 
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die("connessione non riuscita"); 
           $database=mysql_db_query($db_database," query ",$connessione); or die("Connesione DB non riuscuta: ".mysql_error()); 
    //creazione insert 
    $id=$_POST['id']; //questi valori sono i nomi dei form della seconda pagina 
    $nome=$_POST['nome']; 
    $cognome=$_POST['cognome'];   
    $mail=$_POST['email']; 
    mysql_db_query($db_database,"insert into ".$db_tabella."(id, nome, cognome, email) values('".$id."', '".$nome."', '".$cognome."', '".$email."')",$connessione); 
    
                
    ?>
    Mi viene fuori un errore di sintassi nella terza pagina...dovuto penso all'assegnazione delle variabili...
    Dove le devo assegnare???
    Il codice della seconda pagina è questo invece

    Codice:
    <?php 
    
    if ($_POST['password'] == "xxxxxx") 
    { 
    ?> 
    <html> 
    
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 
    <title>.::Amministrazione - Gestione Ordini::.</title> 
    </head> 
    
    <body> 
    <form method="POST" action="http://santadown.altervista.org/inserimento_dati.php"> 
        <!--webbot bot="SaveResults" U-File="fpweb:///_private/form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" --> 
        <p><input type="text" name="id" size="20"></p> 
        <p><input type="text" name="nome" size="20"></p> 
        <p><input type="text" name="cognome" size="20"></p> 
        <p><input type="text" name="email" size="20"></p> 
        <p><input type="submit" value="Invia" name="B1"><input type="reset" value="Reimposta" name="B2"></p> 
    </form> 
    </body> 
    
    </html> 
    <?php 
    } else { 
    ?> 
    <html> 
    <body> 
    <h1 align="center">Accesso non consentito</h1> 
    </body> 
    </html> 
    <?php 
    } 
    ?>
    Mi date una mano a correggerlo???
    Grazie mille

  2. #2
    Guest

    Predefinito

    Che errore ti da? Incollalo qua..così ti aiutiamo meglio..

  3. #3
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Nel primo dei codici, c'è un punto-e-virgola di troppo nell'assegnazione della variabile $database.

    Il secondo codice non mi sembra contenga errori.

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  4. #4
    Guest

    Predefinito

    Il punto è virgola in più l'ho tolto...
    Ora mi da quest'errore

    Connesione DB non riuscuta: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'query' at line 1

    Come mai?

  5. #5
    Guest

    Predefinito

    Al posto di 'query' devi inserire la query.
    Ad esempio:
    Codice PHP:
    mysql_db_query($db_database,"SELECT * FROM my_table",$connessione)
    Comunque l'uso di mysql_db_query è deprecato.. leggi qui : http://www.php.net/function.mysql-db-query

  6. #6
    Guest

    Predefinito

    Grazie...è bastato aggiungere la tua stringa...
    Ora però vorrei che i campi fossero controllati..e nel caso in cui anche uno solo fosse vuoto non m'inserisse nulla nel db...
    Ho letto qualcosa sulla funzione switch....potrebbe fare al caso mio??
    Che cosa scrivo poi per bloccare l'inserimento?
    Grazie mille

  7. #7
    Guest

    Predefinito

    Al giorno d'oggi le query si fanno con:
    Codice PHP:
    $var = mysql_query("SELECT * FROM table");
    if(
    $var) { /* continua... */ } else { /* mostra un errore! */ }
    Questo è un esempio molto banale...oppure se devi selezionare solo un dato:
    Codice PHP:
    $varq = mysql_query("SELECT * FROM table WHERE row = '3'");
    $var = mysql_fetch_array($varq);
    echo
    $var["row"];
    Ciaoooo! ;D

    PS. Naturalmente questi sono tutti esempi! ;D

  8. #8
    Guest

    Predefinito

    Citazione Originalmente inviato da santadown Visualizza messaggio
    Grazie...è bastato aggiungere la tua stringa...
    Ora però vorrei che i campi fossero controllati..e nel caso in cui anche uno solo fosse vuoto non m'inserisse nulla nel db...
    Ho letto qualcosa sulla funzione switch....potrebbe fare al caso mio??
    Che cosa scrivo poi per bloccare l'inserimento?
    Grazie mille
    Basta fare qualche condizione:
    Codice PHP:
    <?php
    $db_host
    = "localhost";
    $db_user = "xxxxxxxx";
    $db_password = "xxxxxxxx";
    $db_database = "xxxxxxx";
    $db_tabella = "clienti";
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die("connessione non riuscita");
    $database=mysql_db_query($db_database," query ",$connessione); or die("Connesione DB non riuscuta: ".mysql_error());
    //creazione insert

    $id=$_POST['id']; //questi valori sono i nomi dei form della seconda pagina
    $nome=$_POST['nome'];
    $cognome=$_POST['cognome'];
    $mail=$_POST['email'];
    if(empty(
    $id) || empty($nome) || empty($cognome) || empty($mail)) {
    echo
    "I campi sono vuoti!"; // se uno dei campi è vuoto non procedo con l'inserimento dei dati
    } else { //se i campi non sono vuoti, inserisco i dati nel database
    mysql_db_query($db_database,"insert into ".$db_tabella."(id, nome, cognome, email) values('".$id."', '".$nome."', '".$cognome."', '".$email."')",$connessione);
    }
    ?>
    Saluti!

  9. #9
    Guest

    Predefinito

    Anche se metto i valori mi da errore...

    Codice:
    
    <?php 
    $db_host = "localhost";
    $db_user = "XXXXXX";
    $db_password = "XXXXX";
    $db_database = "XXXXXX";
    $db_tabella = "clienti";
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die("connessione non riuscita"); 
           $database=mysql_db_query($db_database," SELECT * FROM clienti ",$connessione) or die("Connesione DB non riuscuta: ".mysql_error()); 
    //creazione insert
    $id=$_POST['id'];
    $nome=$_POST['nome'];
    $cognome=$_POST['cognome'];
    $email=$_POST['email']; 
    //$id=$_POST['id'];
    //$nome=$_POST['nome'];
    //$cognome=$_POST['cognome'];  
    //$mail=$_POST['email'];
    mysql_db_query($db_database,"insert into ".$db_tabella."(id, nome, cognome, email) values('".$id."', '".$nome."', '".$cognome."', '".$email."')",$connessione); 
    
    if(empty($id) || empty($nome) || empty($cognome) || empty($mail)) {
    
    
    ?> 
    
    <html>
    
    <head>
    <meta http-equiv="Content-Language" content="it">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Inserimento dati fallito!</title>
    </head>
    
    <body>
    
    <p>Inserimento dati bloccato. Prego controllare tutti i campi precedenti!&nbsp;&nbsp;&nbsp;
    <a href="ingresso.php">
    TORNA INDIETRO</a></p>
    
    </body>
    
    </html>
    <?php
    } else { //se i campi non sono vuoti, inserisco i dati nel database
    mysql_db_query($db_database,"insert into ".$db_tabella."(id, nome, cognome, email) values('".$id."', '".$nome."', '".$cognome."', '".$email."')",$connessione);
    ?>
    <html>
    
    <head>
    <meta http-equiv="Content-Language" content="it">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Inserimento dati completato!</title>
    </head>
    
    <body>
    
    <p>Inserimento dati avvenuto con successo!&nbsp;&nbsp;&nbsp;
    <a href="ingresso.php">
    TORNA INDIETRO</a></p>
    
    </body>
    
    </html>
    <?php
    }
    ?>

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •