errore in insert

Premesso che ho già usato con altri DB i seguenti codici e mi sono limitato a sostituire i nomi dei campi e del db,

Ottengo questo errore:

connesso con successo Query fallitaYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'call,nome,nomecognome,indirizzo,capcitta,prov,telemail,ts) VALUES (\'758\', \'' at line 3

con questa query:

$query = "INSERT INTO

nometabella

(numero,call,nome,nomecognome,indirizzo,capcitta,prov,telemail,ts)

VALUES

(\'$_POST[numero]\',

\'$_POST[call]\',

\'$_POST[nome]\',

\'$_POST[nomecognome]\',

\'$_POST[indirizzo]\',

\'$_POST[capcitta]\',

\'$_POST[prov]\',

\'$_POST[telemail]\',

now())";

$risultato = mysql_query($query) or die("Query fallita" . mysql_error());

i cui campi sono presi da questo form:

<form name="moduloInserimento" action="inserimento.php" method="post">

<table>

 <tr>

     <td>Numero: </td><td><input type="text" name="numero" size="5" maxlength="5"></td>

   </tr>

 <tr>

     <td>Call: </td><td><input type="text" name="call" size="8" maxlength="8"></td>

   </tr>

<tr>

     <td>Nome: </td><td><input type="text" name="nome" size="45" maxlength="45"></td>

   </tr>

<tr>

     <td>NomeCognome: </td><td><input type="text" name="nomecognome" size="45" maxlength="45"></td>

   </tr>

<tr>

     <td>Indirizzo: </td><td><input type="text" name="indirizzo" size="60" maxlength="60"></td>

   </tr>

<tr>

     <td>Cap Citta: </td><td><input type="text" name="capcitta" size="45" maxlength="45"></td>

   </tr>

<tr>

     <td>Provincia: </td><td><input type="text" name="prov" size="18" maxlength="18"></td>

   </tr>

<tr>

     <td>Tel  Email: </td><td><input type="text" name="telemail" size="45" maxlength="45"></td>

   </tr>

   <tr>

     <td align="center" colspan="2"><input type="submit" value="Inserisci"></td>

   </tr>

</table>

</form>

Qualcuno può aiutarmi ?

Grazie

inviato 8 anni fa
bilbo
X 0 X

VABBE  ;) mi rispondo da solo tanto per la cronaca, e poi magari a qualcun altro può servire   :2funny:

l'errore stava nel fatto che non posso chiamare un campo 'call'  !!!  :-[

bye

risposto 8 anni fa
bilbo
X 0 X

in realtà puoi chiamarlo "call" ma siccome "call" è anche un comando di MySQL allora per referenziarlo devi usare i back tick: `call`

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Ok Grazie. Io per evitare problemi ho rinominato il campo del DB:  O0

risposto 8 anni fa
bilbo
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda