creazione modulo e pagina invio php per invio dati al db

  • Creatore Discussione Creatore Discussione zehena
  • Data di inizio Data di inizio

zehena

Nuovo Utente
29 Mar 2015
7
0
0
ciao, scusate se sbaglio qualcosa ho letto il regolamento ma non ho ben compreso cosa siano i tag bbcode per il codice dunque abbiate pieta se erro qualcosa, sto imparando il codice php seguendo video su youtube e documenti vari 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 ne 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. I dati di connessione per ovvi motivi li ho sostituiti con quelli del localhost. Vorrei inserire i le 2 pagine create perche si possano visionare e spero di non trasgredire nessun regolamento altrimenti attendo istruzioni.

pagina modulo da compilare

PHP:
<?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:
<?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 dritta lo ringrazio molto anticipatamente, ciao Antonella
 
Ciao, la connessione al db nella pagina del modulo non ti serve.
Se hai dato name = "Nomeclie" all'input non lo puoi recuperare con
PHP:
$_POST['Nome'];
ma con
PHP:
$_POST['Nomeclie'];
stessa cosa per gli altri campi
E' consigliato verificare sempre che il POST sia settato prima di utilizzarlo
PHP:
if(isset($_POST['Nomeclie']) {
   $Nomeclie = $_POST['Nomeclie'];
}
Appena hai un po di pratica studiati le SQL Injection
Ti converrebbe inoltre utilizzare la libreria mysqli al posto della vecchia e deprecata mysql
Per quanto riguarda i BBCODE e le regole del forum ...... :fonzie: Benvenuta !
 
grazie e mille per l'aiuto sono riuscita a risolvere, sono appena alle prime armi, seguirò il tuo consiglio di conoscere il nuovo linguaggio, ho notato che in giro ci sono comandi più snelli e semplici ma ora, per non fare confusione, vorrei concludere il lavoro con quello che ho intrapreso, grazie di tutto cioa Antonella
 

Discussioni simili