ciao a tutti ho da poco iniziato a studiare PHP con l'uso di MySql per la gestione dei database.
Dopo aver creato un database con phpmyadmin ho provato a fare la connessione e a stampare il contenuto e tutto è andato bene, ora stavo provando a inserire dei dati tramite form, ma mi da errore nella query...per fare una prova ho tolto la query e inserito un echo della variabile che volevo inserire...ma non mi visualizza niente...ho sbagliato qualcosa nel form o ho sbagliato qualcosa nella query...o in entrambi??
metto qui il codice
pagina principale
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>
<body>
<form method='post' action='insert.php'>
<input type='text' name="sub" value='inserisci qui un piatto' size='60' maxlength='300' \>
<input type='submit' value='invia'>
</form>
<?php
$dbcn = @mysql_connect( 'localhost', 'sudimealter', 'password');
if(!$dbcn)
{ echo 'connessione non riuscita';
exit();
}
echo '
' . 'Il nostro menu di oggi:';
echo '
';
if(!@mysql_select_db('my_sudimealter'))
{echo 'errore durante la connessione al database';
exit();
}
else
{
$query1 = @mysql_query('SELECT * FROM `menu`');
while ($row = mysql_fetch_array($query1))
{ echo '
';
echo $row['PID'] . $row['Nome'] . '(' . $row['prezzo'] . ')';
}
}
?>
</body>
</html>
pagina insert
codice:
<html>
<head>
<title> prova inserimento nel database </title>
</head>
<body>
<?php
$dbcn = @mysql_connect( 'localhost', 'sudimealter', 'password');
if(!$dbcn)
{ echo 'connessione non riuscita';
exit();
}
echo '
' . 'Il nostro menu di oggi:';
echo '
';
if(!@mysql_select_db('my_sudimealter'))
{echo 'errore durante la connessione al database';
exit();
}
$sub = $_post['sub'];
echo $sub;
/* $query2 = 'insert into menu(PId, Nome) VALUES ('14','$sub')';
if(@mysql_query($query2))
{ echo 'grazie per il suggerimento';
}
else
{
echo 'qualcosa non è andato bene';
}
*/
echo '
' . 'ecco il nuovo menu:';
?>
</body>
</html>
Per essere più chiaro la parte che ho messo come commento è quella che mi causa errore (più precisamente proprio query2) invece in questo modo, mi stampa gli echo ma non la variabile sub. qualche suggerimento