• User Newbie

    inserimento dei dati in un db

    Salve a tutti,
    ho un problema con il mio primo sito in php: dovrebbe consistere in un sistema per inserire in un db i dati di persone che arrivano in un ufficio di collocamento e vogliono inserirsi perchè cercano lavoro come badanti.

    Ho installato EasyPhp sul portatile e ho creato il db che ho chiamato badanti, con una sola tabella che ho chiamato candidati che contiene un sacco di campi.

    La prima pagina in html contiene il form che manda i dati inseriti nei campi alla pagina inserimentobadanti.php

    Con la funzione trim() ho fatto in modo che se i campi del form obbligatori non vengono compilati si abbia indietro un messaggio...e fin qui ci dovremmo essere...poi ho fatto due controlli in croce su i campi di testo.

    Secondo me il problema sta nella query...ma io non lo vedo proprio, ho guardato anche post precedenti e mi sembra di aver fatto correttamente!

    Mi aiutate? ecco il codice della query 😮

    $query1 = "INSERT INTO candidati (nome, cognome , indirizzo, datanascita, luogonascita , sesso, nazionalita, telefono, cellulare, mail, fax,permessosoggiorno, scadenzapermesso,
    studio, qualifica, esperienze, referenze, noteesperienze, ita, livelloita, inglese, livelloinglese, altralingua, livelloaltralingua, patenti, tipopatente, mezzo, tipomezzo, altrenote, colf, babysitter, babyeta, anzianoauto, anzianoautosesso, anzianononauto, anzianononautosesso, handicap, handicapsesso, luogolavoro, cucinare, pulizie, igiene, compagnia, altremansioni, partime, orapart, fulltime, orafull, convivenza, notti, retribuzione, datacompilazione )

    VALUES
    ('$nome', '$cognome', '$indirizzo', '$datanascita', '$luogonascita', '$sesso', '$nazionalita', '$tel', '$cell', '$email', '$fax', '$permesso', '$scadenza',
    '$studio', '$qualifica', '$lavoro', '$referenze', '$noteesperienze', '$ita', '$livelloita', '$inglese','$livelloinglese', '$altralingua', '$livello', '$patente', '$tipopatente', '$mezzo, '$tipomezzo', '$altrenote',
    '$colf', '$babysitter', '$babysesso', '$etabimbo', '$anzianoauto', '$anzianoautosesso', '$anzianononauto', '$anzianononautosesso', '$handicap', '$handicapsesso', '$luogolavoro', '$cucina', '$pulire', '$igiene', '$compagnia',
    '$altremansioni', '$partime', '$orepart', '$fulltime', '$orefull', '$convivenza', '$notti', '$retribuzione', '$datacompil')";

    if (mysql_query($query1, $db)){
    echo "<h3>La registrazione dei dati nel database è avvenuta correttamente</h3><br>";
    }
    else {
    echo "<h3>Errore durante la registrazione, ripetere l'operazione</h3><br>
    <p><a href=form_inserimento.html>Effettua nuovamente l'inserimento dei dati</a><br></p>";

    }

    Alla fine della fiera mi dice sempre "Errore durante la registrazione ripetere l'operazione"...:microsoft: ...Che tristezza!!!
    Grazie a tutti
    nicoletta


  • User

    52 campi con 53 values inseriti. Penso sia quello il problema. Oppure il problema è sul tipo di dato. Prova a fare un
    echo $query1;
    e vedere che siano settati tutti i valori, magari qualcuno crea casini. Senza la struttura della tabella però è difficle.

    In caso copia/incolla la query su phpmyadmin così ti fa il debug dell'errore e capisci subito come correggere.


  • User

    Aggiungo, il problema è che manca il campo relativo al valore $babysesso 😉
    Dimmi se va.


  • User Newbie

    Grazie mille della risposta, ho fatto come mi hai detto copiando e incollando la query su phpmyadmin...mi ha detto:

    #1064 - Errore di sintassi nella query SQL vicino a '$query1 = "INSERT INTO candidati (nome, cognome , indirizzo, datanascita, luogo' linea 1ma io so' de coccio, non ci vedo l'errore!!!!


  • User

    @nicozizi said:

    Grazie mille della risposta, ho fatto come mi hai detto copiando e incollando la query su phpmyadmin...mi ha detto:

    #1064 - Errore di sintassi nella query SQL vicino a '$query1 = "INSERT INTO candidati (nome, cognome , indirizzo, datanascita, luogo' linea 1ma io so' de coccio, non ci vedo l'errore!!!!

    Come ti ho detto manca babysesso tra i campi, mentre c'è nei values. 😉


  • User Newbie

    nienteee!!!
    ho provato a fare come mi hai detto niente mi dice sempre che non riesce a mettere i dati nel database e devo tornare al form di inserimento, se faccio il debug rimane il solito errore enche se effettivamente mancava il campo che mi hai indicato e ce l'ho aggiunto...Grazie comunque se risolvo te lo faccio sapere 😞


  • User

    L'errore è sicuramente su qualche tipo di dato (magari inserisci una stringa dove ci dovrebbe andate un intero o una data dove dovrebbe esserci un booleano... Se mi spedisci la struttura della tabella trovo subito l'errore...


  • User Newbie

    Ciao Nasozor
    innanzitutto ti ringrazio tantissimo...oggi sono riuscita a trovare il maledetto errore....evvaiiii!!! :pinguino:
    sai cos'era?una virgoletta ma in quel marasma di campi e variabili mi ci è voluto un po' per vederla!
    Grazie dei tuoi preziosi consigli di cui sicuramente avrò ancora bisogno!!! :Trilly-95-77: