- Home
- Categorie
- Coding e Sistemistica
- Coding
- Inserimento Dati In DataBase
-
Inserimento Dati In DataBase
Ciao ragazzi,
Allora ho un nuovo problema. Ho creato un form con circa 20 campi ogniuno con il nome del database, per esempio nome nel dabase è nome...
Il fatto è che non mi vene inserito il testo dei vari textbox nel database. Vi posto il codice php per il salvataggio dei dati:$errore=false; if ( $errore) { echo " <center>Non hai compilato tutti i campi, devi tornare al <A HREF=\"nuovo.php\">modulo</A></center> "; }if ( ($nome == "") || ($cognome == "") || ($email == "")) { #se solo uno dei campi è vuoto $errore=true; echo "<center> Spiacente, devi compilare tutti i campi </center>"; }else { include("config.php"); $db = mysql_connect($dbhost, $dbuser, $dbpassword); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.php"); mysql_select_db($dbname, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.php"); $query = "INSERT INTO modelli (nome, cognome, email, altezza, taglia, petto, vita, fianchi, scarpe, occhi, capelli, sesso, nazionalita, citta, provincia, commenti, privacy) VALUES('".$nome."','".$cognome."','".$email."''".$altezza."','".$taglia."','".$petto."''".$vita."','".$fianchi."','".$scarpe."''".$occhi."','".$capelli."','".$sesso."''".$nazionalita."','".$citta."','".$provincia."''".$commenti."','".$privacy."')"; if (mysql_query($query, $db)) echo "<p align=\"Center\" />Sei stato inserito correttamente. Appena l'amministratore leggerà l'email che gli è stata mandata in automatico, verrà attivata La Tua Pagina. Attendi il Redirect...</p>"; else echo "<p align=\"Center\"/>Erorre durante l'inserimento. Probabilmente c'è già nel database un utente di nome **$nome** **$cognome** che ha qualcosa uguale. Riprova.</p>"; mysql_close($db); }
Facendo un echo $nome; mi dà l'effettivo nome messo nella textbox
Dove sbaglio??Grazie saluti.
-
Ciao ragazzi,
Allora ho un nuovo problema. Ho creato un form con circa 20 campi ogniuno con il nome del database, per esempio nome nel dabase è nome...
Il fatto è che non mi vene inserito il testo dei vari textbox nel database. Vi posto il codice php per il salvataggio dei dati:$errore=false; if ( $errore) { echo " <center>Non hai compilato tutti i campi, devi tornare al <A HREF=\"nuovo.php\">modulo</A></center> "; }if ( ($nome == "") || ($cognome == "") || ($email == "")) { #se solo uno dei campi è vuoto $errore=true; echo "<center> Spiacente, devi compilare tutti i campi </center>"; }else { include("config.php"); $db = mysql_connect($dbhost, $dbuser, $dbpassword); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.php"); mysql_select_db($dbname, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.php"); $query = "INSERT INTO modelli (nome, cognome, email, altezza, taglia, petto, vita, fianchi, scarpe, occhi, capelli, sesso, nazionalita, citta, provincia, commenti, privacy) VALUES('".$nome."','".$cognome."','".$email."''".$altezza."','".$taglia."','".$petto."''".$vita."','".$fianchi."','".$scarpe."''".$occhi."','".$capelli."','".$sesso."''".$nazionalita."','".$citta."','".$provincia."''".$commenti."','".$privacy."')"; if (mysql_query($query, $db)) echo "<p align=\"Center\" />Sei stato inserito correttamente. Appena l'amministratore leggerà l'email che gli è stata mandata in automatico, verrà attivata La Tua Pagina. Attendi il Redirect...</p>"; else echo "<p align=\"Center\"/>Erorre durante l'inserimento. Probabilmente c'è già nel database un utente di nome **$nome** **$cognome** che ha qualcosa uguale. Riprova.</p>"; mysql_close($db); }
Facendo un echo $nome; mi dà l'effettivo nome messo nella textbox
Dove sbaglio??Grazie saluti.
-
Io proverei a fare la query di inserimento in questo modo qui
$query="insert into modelli set nome='$nome', cognome='$cognome', ..... e cosi per tutti i campi ...... privacy='$privacy'"; $id_rest=mysql_query($query); if(!$id_rest) die("Errore"); else if(mysql_affected_rows()<1) print("Inserimento non avvenuto"); else print("Inserimento avvenuto con successo");
Generalmente uso questo tipo di inserimento, che mi sembra più vantaggioso qualora dovessi apportare delle modifiche in futuro. Resta il fatto che la tua query di inserimento sembra essere corretta eccetto per i doppi apici (forse vanno messi quelli singoli)
-
Io proverei a fare la query di inserimento in questo modo qui
$query="insert into modelli set nome='$nome', cognome='$cognome', ..... e cosi per tutti i campi ...... privacy='$privacy'"; $id_rest=mysql_query($query); if(!$id_rest) die("Errore"); else if(mysql_affected_rows()<1) print("Inserimento non avvenuto"); else print("Inserimento avvenuto con successo");
Generalmente uso questo tipo di inserimento, che mi sembra più vantaggioso qualora dovessi apportare delle modifiche in futuro. Resta il fatto che la tua query di inserimento sembra essere corretta eccetto per i doppi apici (forse vanno messi quelli singoli)
-
Io uso la notazione VALUES ('$variabile1', $variabile2', ecc) e funziona.
-
Io uso la notazione VALUES ('$variabile1', $variabile2', ecc) e funziona.
-
Grazie per le risposte,
Le query sono tutte giuste, non credo sia un errore dovuto alla query.
Forse è xkè nel database ho un campo ID con autoincrement.. Non dovrei inserire anche quello o sbaglio?Cmq ho provato anche senza i 2 apici e non l'inserisce
Grazie ancora, Saluti.
-
Grazie per le risposte,
Le query sono tutte giuste, non credo sia un errore dovuto alla query.
Forse è xkè nel database ho un campo ID con autoincrement.. Non dovrei inserire anche quello o sbaglio?Cmq ho provato anche senza i 2 apici e non l'inserisce
Grazie ancora, Saluti.
-
I campi autoincrement vengono gestiti in automatico dal motore mysql. Ad inserimento di un nuovo record il mysql in automatico provvedere ad aggiornare il campo autoincrement
-
I campi autoincrement vengono gestiti in automatico dal motore mysql. Ad inserimento di un nuovo record il mysql in automatico provvedere ad aggiornare il campo autoincrement
-
@Gorka said:
I campi autoincrement vengono gestiti in automatico dal motore mysql. Ad inserimento di un nuovo record il mysql in automatico provvedere ad aggiornare il campo autoincrement
Per cui il problema quale può essere?
-
@Gorka said:
I campi autoincrement vengono gestiti in automatico dal motore mysql. Ad inserimento di un nuovo record il mysql in automatico provvedere ad aggiornare il campo autoincrement
Per cui il problema quale può essere?
-
Ammesso che il nome del campo auto_increment sia id nella query va specificato comunque lasciando un valoreNULL oppure 0 oppure vuoto
$query="insert into modelli (id, nome, cognome, etc etc ) values('','$nome','$cognome', etc etc)";
Cosi vedrai che l'inserimento avviene
-
Io non specifico mai l'inserimento del campo auto_increment e funziona lo stesso.
-
@linus said:
Ammesso che il nome del campo auto_increment sia id nella query va specificato comunque lasciando un valoreNULL oppure 0 oppure vuoto
$query="insert into modelli (id, nome, cognome, etc etc ) values('','$nome','$cognome', etc etc)";
Cosi vedrai che l'inserimento avviene
Niente da fare :bho:
Allora posto il form<FORM ACTION="include/salva.php" METHOD="post"> <p align="left">** Nome: <input type="text" size="20" name="nome"> Cognome:<input type="text" name="cognome"> <p align="left">E-Mail: <input type="text" name="email"> Altezza(cm): <input type=text" name="altezza"> </p> <p align="left">Taglia: <input type="text" size="4" name="taglia">Petto: <input type="text" size="4" name="petto">Vita: <input type="text" size="5" name="vita"> </p> <p align="left">Fianchi:<input type="text" size="4" name="fianchi">Scarpe: <input type="text" size="4" name="scarpe">Età: <input type="text" size="5" name="eta"> </p> <p align="left">Occhi: <input type="text" size="20" name="occhi"> Capelli: <input type="text" size="15" name="capelli"> </p> <p align="left">Sesso: <SELECT size=1 cols=2 NAME="sesso"> <OPTION value=Maschio> Maschio <OPTION value=Femmina> Femmina </select> Nazionalità: <input type="text" size="20" name="nazionalita"> </p> <p align="left">Città: <input type="text" size="20" name="citta"> Provincia: <input type="text" size="20" name="provincia">** </p> <center><span class="tit-01">Esperienze Personali</span> <textarea rows="5" name="commenti" cols="32"></textarea> <span class="tit-01">Informativa Sulla Privacy</span> <TEXTAREA ROWS="5" cols="39">Il presente modulo non ha valore contrattuale ed è da ritenersi rilasciato al sito MinoBaldari.it, al solo scopo informativo e divulgativo; pertanto autorizzo la Spett.le MinoBaldari.it alla pubblicazione e alla diffusione in rete internet della mia immagine e dei dati personali, eccetto indirizzo e telefono. Inoltre ai sensi della Lex.675/96 del 31/12/1996 sul diritto della privacy, acconsento al trattamento, la diffusione e la comunicazione dei dati personali forniti (che contestualmente dichiaro veritieri) nei limiti indicati nell'Art.13 e successive modifiche della legge richiamata. Resta inteso che in qualunque momento e, senza preavviso potrò richiedere all'amministratore del sito MinoBaldari.it di cancellarmi dal sito. </Textarea> <input type="checkbox" name="privacy" value="privacy"> **<u>Ho Letto Ed Accetto L'Informativa Sulla Privacy.</u>** <INPUT type="SUBMIT" value="Invia"></center> </form>
Ora il file salva.php
<?php $errore=false; if ( $errore) { echo " <center>Non hai compilato tutti i campi, devi tornare al <A HREF=\"nuovo.php\">modulo</A></center> "; }if ( ($nome == "") || ($cognome == "") || ($email == "")) { #se solo uno dei campi è vuoto $errore=true; echo "<center> Spiacente, devi compilare tutti i campi </center>"; }else { include('../config.php'); $db = mysql_connect($dbhost, $dbuser, $dbpassword); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.php"); mysql_select_db($dbname, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.php"); $query = "INSERT INTO modelli ( id, nome, cognome, email, altezza, taglia, petto, vita, fianchi, scarpe, occhi, capelli, sesso, nazionalita, citta, provincia, commenti, privacy) VALUES('".$nome."','".$cognome."','".$email."''".$altezza."','".$taglia."','".$petto."''".$vita."','".$fianchi."','".$scarpe."''".$occhi."','".$capelli."','".$sesso."''".$nazionalita."','".$citta."','".$provincia."''".$commenti."','".$privacy."')"; if (mysql_query($query, $db)) echo "<p align=\"Center\" />Sei stato inserito correttamente. Appena l'amministratore leggerà l'email che gli è stata mandata in automatico, verrà attivata La Tua Pagina. Attendi il Redirect...</p>"; else echo "<p align=\"Center\"/>Erorre durante l'inserimento. Probabilmente c'è già nel database un utente di nome **$nome** **$cognome** che ha qualcosa uguale. Riprova.</p>"; mysql_close($db); } ?>
Ditemi se ho sbagliato nel form pls
P.S: Se qualcuno può dirmi anche come fare il controllo alla chekbox della privacy
Grazie ancora, Saluti.
-
Ohi dai ragazzi mi so fermato su questo punto!!!
Help Me Pls, If You Can...