Invio dati da form a db

di il
2 risposte

Invio dati da form a db

Ciao, sto imparando il codice php seguendo video su youtube e documenti veri su internet, vorrei trasformare il mio sito aggiungendo pagine interattive con il database. Ho inserito phpmyadmin nel server dove ho il sito, riesco a collegarmi tramite browser e ho anche creato una pagina che legge i contenuti del db che funziona perfettamente. Il problema è inviare i dati nel db, ho creato 2 pagine php 1 per il modulo da compilare, l'altra da collegamento per inviare i dati inseriti al db. Ne la pagina del modulo e quella di invio mi danno errori a video però i dati non arrivano al db, ho provato a testare la connessione (anche aggiungendo un piccolo errore per vedere se rispondeva, e tutto funziona, dunque il problema sta in qualche parte del codice di invio. inserisco i codici del modulo e della pagina di invio , per la connessione ho inserito i dati di localhost

pagina modulo da compilare
<?php

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

if (!$con)
{
 die ("connessione fallita!" .mysql_error());
}
$db =mysql_select_db("negozio", $con);

if (!$db)
{
 die ("connessione al db fallita!" .mysql_error());
}

?>
<HTML>
<HEAD>
<TITLE>PHP e MySQL</TITLE>
</HEAD>
<BODY>
Raccolta dati del cliente: <BR />
<FORM ID="clie" NAME=clie" METHOD="POST"
ACTION="clie.php">
<LABEL>Nome cliente:
<INPUT TYPE="TEXT" NAME="Nomeclie" ID="Nomeclie" />
</LABEL>
<P><LABEL>Indirizzo:
<INPUT TYPE="TEXT" NAME="indclie" ID="indclie" />
</LABEL>
<P><LABEL>CF:
<INPUT TYPE="TEXT" NAME="CFclie" ID="CFclie" />
</LABEL></P>
<P>
<INPUT TYPE="SUBMIT" NAME="Submit" ID="Submit"
VALUE="Invia" />
<INPUT TYPE="RESET" NAME="cancel" ID="cancel"
VALUE="Azzera" />
</P>
</FORM>
</BODY>
</HTML>
<?php mysql_close($con); ?
pagina invio al db

<?php

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

if (!$con)
{
 die ("connessione fallita!" .mysql_error());
}
$db =mysql_select_db("negozio", $con);

if (!$db)
{
 die ("connessione al db fallita!" .mysql_error());
}

?>

<?php

 $Nomeclie=$_POST['Nome'];
 $Indclie=$_POST['Indirizzo'];
 $CFclie=$_POST['CF'];

 $query="INSERT INTO clienti (Nome, Indirizzo, CF,)";
 $query.="VALUES ('".$Nomeclie."','".$Indclie."','".$CFclie."')";

 mysql_query ($query, $con);

?>

<?php Mysql_close($con); ?>
se qualcuno puo darmi qualche consiglio lo ringrazio anticipatamente, ciao Antonella

2 Risposte

  • Re: Invio dati da form a db

    Intanto, nel form ci sono dei tag <p> che apri ma non chiudi. Poi, nella pagina del form è del tutto inutile collegarsi al database.. di questo si occupa l'altra pagina.

    Il problema è: se tu dichiari questo
    <INPUT TYPE="TEXT" NAME="Nomeclie" ID="Nomeclie" />
    <INPUT TYPE="TEXT" NAME="indclie" ID="indclie" />
    <INPUT TYPE="TEXT" NAME="CFclie" ID="CFclie" />
    Perché cerchi di accedervi così:
    $Nomeclie=$_POST['Nome'];
    $Indclie=$_POST['Indirizzo'];
    $CFclie=$_POST['CF'];
    ? Non noti nulla di sbagliato?

    E poi nella seconda pagina è inutile che spezzi il codice in due blocchi <?php ... ?>, tanto vale che ne hai uno solo..
  • Re: Invio dati da form a db

    Grazie per le dritte, sono alle prime armi, sono circa 15gg che, tutte le sere, seguo lezioni php su youtube e faccio ancora un po' di confusione, oltre ai tuoi consigli ho trovato anche il nome della pagina che invia i dati non preciso, e una virgola di troppo dopo CF; ho corretto e testato tutto sul mio sito e ora, questa prima prova, funziona perfettamente, associato alla pagina, sempre php, che mi stampa a video i risultati, è una passeggiata ricavare i risultati. Grazie ancora di tutto Antonella
Devi accedere o registrarti per scrivere nel forum
2 risposte