Ciao a tutti, questo è il mio primo post, quindi innanzi tutto faccio una breve presentazione...
Sono uno studente autodidatta di php,lo sto imparando tramite il libro "PHP e MySQL" di O'REILLY quindi siate clementi sono una schiappazza
vengo ora al problema...
desideravo fare una pagina per l'inserimento dati in un db le cui tabelle le ho così costruite
codice:
create table Tabella
-> (IdTabella int not null auto_increment primary key,
-> Nome varchar(15),
-> Cognome varchar(15),
-> IdS int not null references Tabella2(IdS)
-> )type=InnoDB;
tabella2
create table Tabella2
-> (IdS int not null auto_increment primary key,
-> Nome varchar(15),
-> )type=InnoDB;
questa la pagina tramite la quale vengono scritti i valori
codice:
<table>
<tr>
<td>Nome</td>
<td><input type="text" name="Nome" size=30></td>
</tr>
<tr>
<td>Cognome</td>
<td><input type="text" name="Cognome" size=30></td>
</tr>
<tr>
<td>IdS</td>
<td><Select style="width:200px" id=select1 name="IdS">
<option value="">Scegli</option>
<?php
$result = mysql_query("select IdS,Nome a from Tabella2", $connection);
while($row = mysql_fetch_array($result)){
echo " <option value=\"$row[IdS]\">$row[Nome]</option>\n";
}
?>
</Select></td>
</tr>
e questa la pagina per l'inserimento
codice:
<?php
require "db.inc";
if (!empty($_GET['Nome'])&&
!empty($_GET['Cognome'])&&
!empty($_GET['IdS']))
{
if(!($connection = @ mysql_connect('localhost', 'USER', 'PASSWORD')))
die("could not connect to database");
$Nome = mysqlclean($_GET, "Nome", 50, $connection);
$Cognome = mysqlclean($_GET, "Cognome", 50, $connection);
$IdS = mysqlclean($_GET, "IdS", 50, $connection);
if(!mysql_select_db("DATABASE",$connection))
showerror();
$query = "insert into Tabella values
('', '$Nome', '$Cognome', $IdS, )";
if(!(@mysql_query ($query, $connection)))
showerror();
header("");
}
else
header("");
?>
Una volta inseriti i campi, se faccio l'inserimento mi compare il seguente errore
Error 1064 : 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 ' )' at line 1
da quello che ho capito l'errore sta appunto nella query Insert into solo che non capisco dove è
p.s. il tutto ha funzionato quando l'inserimento del campo IdS avveniva tramite un campo testo come per nome e cognome...poi da quando ho modificato nella prima pagina la modalità di scelta del campo mi ha segnalato l'errore :master:
grazie in anticipo a tutti