Invio dati da form a Mysql

  • Creatore Discussione Creatore Discussione Lethe86
  • Data di inizio Data di inizio

Lethe86

Nuovo Utente
4 Giu 2011
5
0
0
Avrei bisogno di una mano u.u

Vi spiego tutto e poi vi posto il codice

Allora ho un db di nome toc con due tabelle: Tessera e Casella

Devo far inserire tramite un form dei dati da inserire nella tabella Tessera tramite un pulsante Invia.

Non mi funziona u.u Riuscite a darmi una manina?

<body>
<html>

<body bgcolor="yellow">
<body link="blue" alink="blue" vlink="blue">
<font face="Georgia" color="Black" size="3">

<FORM method="post">

NOME: <INPUT type="TEXT" name="nome" maxlength="50" size="30" value="">
<br><br><br>
<INPUT type="SUBMIT">

</FORM>


</body>
</html>

<?php
if (!isset ($_POST['submit'])) {

$con = mysql_connect("localhost","","");
if (!$con)
{
die('Errore connessione: ' . mysql_error());
}
mysql_select_db("toc", $con);

$sql="INSERT INTO tessera (Nome, Cognome, Nickname, Indirizzo, Cap, Città, Provincia, Tel1, Tel2, Mail, Spesa, Spesa10, Spesa20, Sconto5, Sconto10, Sconto20)
VALUES
('$_POST[$nome]',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,0)";

if (!mysql_query($sql,$con))
{
die('Errore inserimento: ' . mysql_error());
}
echo "Tessera aggiunta";

mysql_close($con);

}

?>
 
Manca il name="submit" nell'input submit, nell'isset(!$_POST['submit']) togli il !
Nell'sql modifica $_POST[$nome] con $_POST['nome'] (attento agli apici)
 
Ultima modifica:
Ti ringrazio per l'aiuto. Si vede che sono alle prime esperienze con php xD

cmq ora il Codice è:

<body>
<html>

<body bgcolor="yellow">
<body link="blue" alink="blue" vlink="blue">
<font face="Georgia" color="Black" size="3">

<FORM method="post">

NOME: <INPUT type="TEXT" name="nome" maxlength="50" size="30" value="">
<br><br><br>
<INPUT type="SUBMIT" name="submit">

</FORM>


</body>
</html>

<?php
if (isset ($_POST['submit'])) {

$con = mysql_connect("localhost","","");
if (!$con)
{
die('Errore connessione: ' . mysql_error());
}
mysql_select_db("toc", $con);

$sql="INSERT INTO tessera (Nome, Cognome, Nickname, Indirizzo, Cap, Città, Provincia, Tel1, Tel2, Mail, Spesa, Spesa10, Spesa20, Sconto5, Sconto10, Sconto20)
VALUES
('$_POST['nome']',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,0)";

if (!mysql_query($sql,$con))
{
die('Errore inserimento: ' . mysql_error());
}
echo "Tessera aggiunta";

mysql_close($con);

}

?>


Ma quando tramite phpmyadmin vado a vedere i campi della tabella, risultano ancora vuoti :crying:
 
Togli gli apici da $_POST['nome'] in modo da avere $_POST[nome]
Ah comunque ho visto adesso che mancano username e password per la connessione a mysql e l'action del form, inseriscili
 
Ultima modifica:
Mi spiace disturbarti ancora ed abusare della tua pazienza. Ma sn proprio scarso su php (al momento.. prima o poi diventerò bravo :mavieni:)

Ho ancora due cose che ti devo chiedere.

Ho creato due pagine, la prima in html:

<html>
<body>

<body bgcolor="yellow">
<body link="blue" alink="blue" vlink="blue">
<font face="Georgia" color="Black" size="3">

<FORM method="post" action="paginaRisposta.php">

NOME: <INPUT type="TEXT" name="nome" maxlength="50" size="30" value="">
<br><br><br>
<INPUT type="SUBMIT" name="submit">

</FORM>

</body>
</html>

E poi la paginaRisposta.php che ho messo come action nel form:

<?php
if (isset ($_POST['submit'])) {

$con = mysql_connect("localhost","","");
if (!$con)
{
die('Errore connessione: ' . mysql_error());
}
mysql_select_db("toc", $con);

$sql="INSERT INTO tessera (Nome, Cognome, Nickname, Indirizzo, Cap, Città, Provincia, Tel1, Tel2, Mail, Spesa, Spesa10, Spesa20, Sconto5, Sconto10, Sconto20)
VALUES
('$_POST[nome]',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,0)";

if (!mysql_query($sql,$con))
{
die('Errore inserimento: ' . mysql_error());
}
echo "Tessera aggiunta";

mysql_close($con);

}

?>

A questo punto avvio il programma e noto che alla fine va sulla pagina rispostaPagina.php ma non mi scrive nulla e noto che non inserisce nel db :crying:

Un altro aiuto di cui ho bisogno è per la connessione al db... li ho lasciati vuoti perchè non so dove posso vederli... password sicuramente non c'è quindi come la scrivo? Con "" come ho fatto? l'username invece dove la vedo?

Grazie 1000
 
Non ti da nessun tipo di errore?
Comunque se stai lavorando in locale l'username dovrebbe essere root e la password se non è stata impostata non dovrebbe esserci, comunque per essere sicuro controlla il file config.inc di phpmyadmin per controllare i dati o eventualmente modificarli.
Se non stai lavorando in locale i dati dovrebbero esserti stati forniti dal tuo servizio di hosting
 
Si lavoro in locale. E' un programmino per la gestione di un negozio che vorrei regalare a dei miei amici ^_^

Cmq su php my admin ho trovato questo

root localhost No ALL PRIVILEGES

Quindi ho messo:

$con = mysql_connect("localhost","root","");

Ma non restituisce alcun output, neanche di errore. E facendo la query sulla tabella da phpmyadmin

SELECT *
FROM `tessera`

Mi restituisce

MySQL ha restituito un insieme vuoto (i.e. zero righe). ( La query ha impiegato 0.0005 sec )

Uffi non capisco il problema T_T
 
Restituisce un'insieme vuoto perchè non ci sono record nella tabella, hai provato a rieseguire lo script con i dati di connessione aggiornati?
Strano non restituisca errori, prova così:
PHP:
<?php
if (isset ($_POST['submit'])) {
$nome = $_POST['nome']; // recupero il valore dell'input

$con = mysql_connect("localhost","root","") or die('Errore connessione: ' . mysql_error());
mysql_select_db("toc", $con) or die('Impossibile selezionare il database: ' . mysql_error());

$sql="INSERT INTO tessera (Nome, Cognome, Nickname, Indirizzo, Cap, Città, Provincia, Tel1, Tel2, Mail, Spesa, Spesa10, Spesa20, Sconto5, Sconto10, Sconto20) VALUES ('$nome',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0 ,0,0,0,0)";
mysql_query($sql) or die('Errore inserimento: ' . mysql_error());

echo "Tessera aggiunta";

mysql_close($con);
}
?>
 
Ci mancava anche phpmyadmin che mi desse problemi

"Non posso far partire la sessione senza errori, controlla gli errori nel log di PHP e/o del tuo server web e configura correttamente la tua installazione di PHP."

Appena risolvo provo la tua soluzione u.u
 

Discussioni simili