- Home
- Categorie
- Coding e Sistemistica
- Coding
- Insert che non fa la insert
-
Insert che non fa la insert
ciao a ttt,
non riesco a capire il motivo per cui il sistema non mi fa la insert nel db. La cosa piu "anomala" è che non mi restituisce alcun errore di sintassi...per cui nn so dove sbattere la testa.
<html> <body> <form action='<?php echo $PHP_SELF;?>' method='POST'> Data: <input type="text" name="data" value=""><br> <?php $host = "xx.xxx.xxx.xxx"; $user = "Sqlyyy"; $pass = "rerere"; $db = "rererre"; $dbname = "portale"; $connessione=mysql_connect($host,$user,$pass)or die (mysql_error()); $dbsel = mysql_select_db($db , $connessione)or die (mysql_error()); // COMBO RAGIONE SOCIALE echo "Ragione sociale"; echo "<select name='ragionesociale'>"; $result = mysql_query("SELECT DISTINCT ragionesociale FROM clienti ORDER BY ragionesociale ASC"); while($row = mysql_fetch_array($result)) { echo "<option value='".$row['ragionesociale']."'>".$row['ragionesociale']."</option>"; } echo "</select>"; echo $row[1] . "<br/>"; // COMBO TIPOLOGIA LAVORO echo "Tipologia Lavoro"; echo "<select name='tipologia_lavoro'>"; $result = mysql_query("SELECT DISTINCT tipologia FROM tipologia_lavoro ORDER BY tipologia ASC"); while($row = mysql_fetch_array($result)) { echo "<option value='".$row['tipologia']."'>".$row['tipologia']."</option>"; } echo "</select>"; echo $row[1] . "<br/>"; ?> Note: <input type="text" name="note" value=""><br> Prezzo Preventivato: <input type="text" name="prezzo" value=""><br> Scadenza: <input type="text" name="scadenza" value=""><br> Numero Fattura: <input type="text" name="numeroFattura" value=""><br> <input type="submit" value="Aggiungi"> </form> <?php if(isset($_POST['data'])) { $host = "xx.xxx.xxx.xxxx"; $user = "aaaaa"; $pass = "dsadsadas"; $db = "dsadsadsa"; $dbname = "portale"; $connessione=mysql_connect($host,$user,$pass)or die (mysql_error()); $dbsel = mysql_select_db($db , $connessione)or die (mysql_error()); // RECUPERA DATI DAL FORM $data = $_POST['data']; $ragionesociale = $_POST['ragionesociale']; $tipologia_lavoro = $_POST['tipologia_lavoro']; $note = $_POST['note']; $prezzo = $_POST['prezzo']; $scadenza = $_POST['scadenza']; $numeroFattura = $_POST['numeroFattura']; //INSERT $toinsert = "INSERT INTO agenda_lavori (data, ragionesociale, tipologia_lavoro, note, prezzo, scadenza, numeroFattura,) VALUES ('".$data."','".$ragionesociale."','".$tipologia_lavoro."','".$note."','".$prezzo."','".$scadenza."','".$numeroFattura."' )"; //$result = mysql_query($toinsert); //if($result){ // echo("<br>Inserimento avvenuto correttamente"); //} else{ // echo("<br>Inserimento non eseguito"); //} $result = mysql_query($toinsert); if($result){ echo("<br>Inserimento avvenuto correttamente"); } else{ echo("<br>Inserimento non eseguito"); } if (isset($data)) { echo ("Campo data obblicatorio"); } else { echo ("OK"); } } ?> <a href="home.html"><img src="../img/home.jpg" /></a> </body> </html>Grazie a tutti...
-
Il campo agenda_lavori.data di che tipo è? Se è un DATE o DATETIME, se non inserisci il valore nel formato corretto non esegue l'insert
-
varchar...
cosa metto?
-
ho appena provato modificando il DATE, ma l insert non la fa ancora...

-
Se non ti serve fare calcoli con le date, tieni pure VARCHAR...
Gli echo "Inserimento avvenuto" o "non avvenuto" vengono visualizzati o tutta quella parte di codice non viene letta?
-
quando clicco AGGIUNGI mi visualizza
Inserimento non eseguitoCampo popolatoe nn fa alcuna insert
-
Trovato!
QUando hai messo sotto commento una parte di codice hai messo anche://$result = mysql_query($toinsert);
-
niente...ho de-commentato anche quella stringa.
"Inserimento non eseguitoCampo popolato"
Ma è possibile che non se ne esce? e pure sembra che fila tutto liscio...
Sto scherando...
-
<?php if(isset($_POST['data'])) { # Ho cancellato la parte in cui si riconnetteva al database, l'aveva già fatto in alto e potrebbe causare errori // RECUPERA DATI DAL FORM $data = $_POST['data']; $ragionesociale = $_POST['ragionesociale']; $tipologia_lavoro = $_POST['tipologia_lavoro']; $note = $_POST['note']; $prezzo = $_POST['prezzo']; $scadenza = $_POST['scadenza']; $numeroFattura = $_POST['numeroFattura']; //INSERT $toinsert = "INSERT INTO agenda_lavori (data, ragionesociale, tipologia_lavoro, note, prezzo, scadenza, numeroFattura,) VALUES ('".$data."','".$ragionesociale."','".$tipologia_lavoro."','".$note."','".$prezzo."','".$scadenza."','".$numeroFattura."' )"; #Ho eliminato il commento, e non serve mettere $result= mysql_query(); perchè non devi assegnare ad una variabile dei valori presi con il select, ma solo eseguire un'azione, quindi: if(mysql_query($toinsert)){ echo("<br>Inserimento avvenuto correttamente"); } else{ echo("<br>Inserimento non eseguito"); } cancellato quell'if(isset($data)), perchè era già la condizione per entrare in questo if, ripeterlo non serve. Se il server legge questo, $data è settato. } ?>Prova a vedere se va, ho messo a posto il pezzo di codice da <?php a ?>, e ti ho messo dei commenti, così capisci i cambiamenti che ho fatto.
Ciao!
-
Ciao,
l'errore è la virgola di troppo nella query:INSERT INTO agenda_lavori (data, ragionesociale, tipologia_lavoro, note, prezzo, scadenza, numeroFattura,)Mentre dovrebbe essere:
INSERT INTO agenda_lavori (data, ragionesociale, tipologia_lavoro, note, prezzo, scadenza, numeroFattura)