Ciao a tutti, ho un problema col codice php; compilato il modulo di registrazione, i dati vengono memorizzati nel database tranne l'username e la password.
Qualcuno può dirmi dove sbaglio?
Questo è il codice php:
<?php
// controllo sul parametro d'invio
if(isset($_POST['invia']) && (trim($_POST['invia']) == "Registrati"))
{
// controllo sul formato dell'email
if((!isset($_POST['email'])) || (!eregi("^([a-z0-9\._-]+)(@[a-z0-9.-]+)(\.{1}[a-z]{2,4})$", $_POST['email'])))
{
echo "Attenzione, formato email non valido.";
}
// controllo sul formato della password deve essere alfanumerica e non deve superare i dieci caratteri di lunghezza
elseif((!isset($_POST['password'])) || ($_POST['password'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password'])) || (strlen(trim($_POST['password']) > 10)))
{
echo "La password deve essere alfanumerica e non più lunga di 10 caratteri.";
}else{
// se i parametri sono corretti popoliamo il database
$cognome = mysql_real_escape_string($_POST['cognome']);
$nome = mysql_real_escape_string($_POST['nome']);
$indirizzo = $_POST['indirizzo'];
$cap = $_POST['cap'];
$citta = $_POST['città'];
$provincia = $_POST['provincia'];
$sesso = $_POST['sesso'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$username = $_POST['username'];
$password = md5($_POST['password']);
// ma prima controlliamo che la mail non sia già presente includiamo il file di configurazione
@include "config_db.php";
$ctrl_mail = @mysql_query("SELECT id_utente FROM registrazione_utenti WHERE email='$email'") or die (mysql_error());
if(@mysql_num_rows($ctrl_mail)>0)
{
echo "L'email risulta già stata registrata.";
}else{
// query d'inserimento
if(@mysql_query("INSERT INTO registrazione_utenti (cognome, nome, indirizzo, cap, città, provincia, sesso, telefono, email, username, password)
VALUES('$cognome', '$nome', '$indirizzo', '$cap', '$citta', '$provincia', '$sesso', '$telefono', '$email', '$username', '$password')") or die (mysql_error()));
{
// messaggio di conferma
echo "Conferma l'iscrizione tramite l'e-mail che ti è stata inviata.";
// email per la conferma
// intestazioni
$headers = "From: [email protected]\nreply-To: noreply\r\n";
$subject = "Conferma la tua iscrizione.";
//corpo del messaggio
$messaggio = "Ti ringraziamo per la tua iscrizione.\n";
$messaggio .= "La tua e-mail è: ".$email."\n";
$messaggio .= "La tua password è: ".$password."\n";
$messaggio .= "Per confemare vai alla pagina http://www.corradominnozzi.altervis...strazione.php\n";
$messaggio .= "e inserisci i dati per l'autenticazione.\n";
// invio dell'email
@mail($email, stripslashes($subject),stripslashes($messaggio),$headers);
}
}
}
}else{
// form per l'iscrizione
?>
<html>
<head>
<title>Registrazione</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="altervista.css">
<style type="text/css">
p {font-weight: bold}
</style>
<script type="text/javascript">
function ver()
{
for (i=0; i<document.forms[0].elements.length; ++i)
if(document.forms[0].elements.value == "")
{
alert("Riempi tutti i campi!");
document.forms[0].elements.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<h2 align="center">Modulo di registrazione</h2>
<div align="right">
<script type="text/javascript" src="data_orologio.js"></script>
</div>
<form action="registrazione.php" method="post">
<p>Cognome:<br /><input type="text" name="cognome" size="30" /></p>
<p>Nome:<br /><input type="text" name="nome" size="30" /></p>
<p>Indirizzo:<br /><input type="text" name="indirizzo" size="30" /></p>
<p>Città:<br /><input type="text" name="città" size="20" /></p>
<b>Provincia:</b><br />
<select name="provincia">
<option selected="selected"></option>
<option value="AG">AG</option>
<option value="AL">AL</option>
<option value="AN">AN</option>
<option value="AO">AO</option>
<option value="AP">AP</option>
<option value="AQ">AQ</option>
<option value="AR">AR</option>
<option value="AT">AT</option>
<option value="AV">AV</option>
<option value="BA">BA</option>
<option value="BG">BG</option>
<option value="BI">BI</option>
<option value="BL">BL</option>
<option value="BN">BN</option>
<option value="BO">BO</option>
<option value="BR">BR</option>
<option value="BS">BS</option>
<option value="BZ">BZ</option>
<option value="CA">CA</option>
<option value="CB">CB</option>
<option value="CE">CE</option>
<option value="CH">CH</option>
<option value="CL">CL</option>
<option value="CN">CN</option>
<option value="CO">CO</option>
<option value="CR">CR</option>
<option value="CS">CS</option>
<option value="CT">CT</option>
<option value="CZ">CZ</option>
<option value="EE">EE</option>
<option value="EN">EN</option>
<option value="FC">FC</option>
<option value="FE">FE</option>
<option value="FG">FG</option>
<option value="FI">FI</option>
<option value="FO">FO</option>
<option value="FR">FR</option>
<option value="GE">GE</option>
<option value="GO">GO</option>
<option value="GR">GR</option>
<option value="IM">IM</option>
<option value="IS">IS</option>
<option value="KR">KR</option>
<option value="LC">LC</option>
<option value="LE">LE</option>
<option value="LI">LI</option>
<option value="LO">LO</option>
<option value="LT">LT</option>
<option value="LU">LU</option>
<option value="MC">MC</option>
<option value="ME">ME</option>
<option value="MI">MI</option>
<option value="MN">MN</option>
<option value="MO">MO</option>
<option value="MS">MS</option>
<option value="MT">MT</option>
<option value="NA">NA</option>
<option value="NO">NO</option>
<option value="NU">NU</option>
<option value="OR">OR</option>
<option value="PA">PA</option>
<option value="PC">PC</option>
<option value="PD">PD</option>
<option value="PE">PE</option>
<option value="PG">PG</option>
<option value="PI">PI</option>
<option value="PN">PN</option>
<option value="PO">PO</option>
<option value="PR">PR</option>
<option value="PS">PS</option>
<option value="PT">PT</option>
<option value="PU">PU</option>
<option value="PV">PV</option>
<option value="PZ">PZ</option>
<option value="RA">RA</option>
<option value="RC">RC</option>
<option value="RE">RE</option>
<option value="RG">RG</option>
<option value="RI">RI</option>
<option value="RM">RM</option>
<option value="RN">RN</option>
<option value="RO">RO</option>
<option value="SA">SA</option>
<option value="SI">SI</option>
<option value="SO">SO</option>
<option value="SP">SP</option>
<option value="SR">SR</option>
<option value="SS">SS</option>
<option value="SV">SV</option>
<option value="TA">TA</option>
<option value="TE">TE</option>
<option value="TN">TN</option>
<option value="TO">TO</option>
<option value="TP">TP</option>
<option value="TR">TR</option>
<option value="TS">TS</option>
<option value="TV">TV</option>
<option value="UD">UD</option>
<option value="VA">VA</option>
<option value="VB">VB</option>
<option value="VC">VC</option>
<option value="VE">VE</option>
<option value="VI">VI</option>
<option value="VR">VR</option>
<option value="VT">VT</option>
<option value="VV">VV</option>
</select>
<p>CAP:<br /><input type="text" name="cap" size="10" maxlength="5"/></p>
<b>Sesso:</b><br>
<b>M</b><input type="radio" name="sesso" value="M" checked>
<b>F</b><input type="radio" name="sesso" value="F">
<p>Telefono:<br /><input type="text" name="telefono" size="20" /></p>
<p>e-mail:<br /><input type="text" name="email" size="30" /></p>
<b>Username:<br /><input type="text" name="username" size="30" /></b>
<p>Password:<br /><input type="password" name="password" size="30" /></p>
<br><input type="submit" name="invia" value="Registrati" onClick="ver()">
<input type="reset" name="reset" value="Cancella">
</form>
<?
}
?>
</body></html>
Qualcuno può dirmi dove sbaglio?
Questo è il codice php:
<?php
// controllo sul parametro d'invio
if(isset($_POST['invia']) && (trim($_POST['invia']) == "Registrati"))
{
// controllo sul formato dell'email
if((!isset($_POST['email'])) || (!eregi("^([a-z0-9\._-]+)(@[a-z0-9.-]+)(\.{1}[a-z]{2,4})$", $_POST['email'])))
{
echo "Attenzione, formato email non valido.";
}
// controllo sul formato della password deve essere alfanumerica e non deve superare i dieci caratteri di lunghezza
elseif((!isset($_POST['password'])) || ($_POST['password'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password'])) || (strlen(trim($_POST['password']) > 10)))
{
echo "La password deve essere alfanumerica e non più lunga di 10 caratteri.";
}else{
// se i parametri sono corretti popoliamo il database
$cognome = mysql_real_escape_string($_POST['cognome']);
$nome = mysql_real_escape_string($_POST['nome']);
$indirizzo = $_POST['indirizzo'];
$cap = $_POST['cap'];
$citta = $_POST['città'];
$provincia = $_POST['provincia'];
$sesso = $_POST['sesso'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$username = $_POST['username'];
$password = md5($_POST['password']);
// ma prima controlliamo che la mail non sia già presente includiamo il file di configurazione
@include "config_db.php";
$ctrl_mail = @mysql_query("SELECT id_utente FROM registrazione_utenti WHERE email='$email'") or die (mysql_error());
if(@mysql_num_rows($ctrl_mail)>0)
{
echo "L'email risulta già stata registrata.";
}else{
// query d'inserimento
if(@mysql_query("INSERT INTO registrazione_utenti (cognome, nome, indirizzo, cap, città, provincia, sesso, telefono, email, username, password)
VALUES('$cognome', '$nome', '$indirizzo', '$cap', '$citta', '$provincia', '$sesso', '$telefono', '$email', '$username', '$password')") or die (mysql_error()));
{
// messaggio di conferma
echo "Conferma l'iscrizione tramite l'e-mail che ti è stata inviata.";
// email per la conferma
// intestazioni
$headers = "From: [email protected]\nreply-To: noreply\r\n";
$subject = "Conferma la tua iscrizione.";
//corpo del messaggio
$messaggio = "Ti ringraziamo per la tua iscrizione.\n";
$messaggio .= "La tua e-mail è: ".$email."\n";
$messaggio .= "La tua password è: ".$password."\n";
$messaggio .= "Per confemare vai alla pagina http://www.corradominnozzi.altervis...strazione.php\n";
$messaggio .= "e inserisci i dati per l'autenticazione.\n";
// invio dell'email
@mail($email, stripslashes($subject),stripslashes($messaggio),$headers);
}
}
}
}else{
// form per l'iscrizione
?>
<html>
<head>
<title>Registrazione</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="altervista.css">
<style type="text/css">
p {font-weight: bold}
</style>
<script type="text/javascript">
function ver()
{
for (i=0; i<document.forms[0].elements.length; ++i)
if(document.forms[0].elements.value == "")
{
alert("Riempi tutti i campi!");
document.forms[0].elements.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<h2 align="center">Modulo di registrazione</h2>
<div align="right">
<script type="text/javascript" src="data_orologio.js"></script>
</div>
<form action="registrazione.php" method="post">
<p>Cognome:<br /><input type="text" name="cognome" size="30" /></p>
<p>Nome:<br /><input type="text" name="nome" size="30" /></p>
<p>Indirizzo:<br /><input type="text" name="indirizzo" size="30" /></p>
<p>Città:<br /><input type="text" name="città" size="20" /></p>
<b>Provincia:</b><br />
<select name="provincia">
<option selected="selected"></option>
<option value="AG">AG</option>
<option value="AL">AL</option>
<option value="AN">AN</option>
<option value="AO">AO</option>
<option value="AP">AP</option>
<option value="AQ">AQ</option>
<option value="AR">AR</option>
<option value="AT">AT</option>
<option value="AV">AV</option>
<option value="BA">BA</option>
<option value="BG">BG</option>
<option value="BI">BI</option>
<option value="BL">BL</option>
<option value="BN">BN</option>
<option value="BO">BO</option>
<option value="BR">BR</option>
<option value="BS">BS</option>
<option value="BZ">BZ</option>
<option value="CA">CA</option>
<option value="CB">CB</option>
<option value="CE">CE</option>
<option value="CH">CH</option>
<option value="CL">CL</option>
<option value="CN">CN</option>
<option value="CO">CO</option>
<option value="CR">CR</option>
<option value="CS">CS</option>
<option value="CT">CT</option>
<option value="CZ">CZ</option>
<option value="EE">EE</option>
<option value="EN">EN</option>
<option value="FC">FC</option>
<option value="FE">FE</option>
<option value="FG">FG</option>
<option value="FI">FI</option>
<option value="FO">FO</option>
<option value="FR">FR</option>
<option value="GE">GE</option>
<option value="GO">GO</option>
<option value="GR">GR</option>
<option value="IM">IM</option>
<option value="IS">IS</option>
<option value="KR">KR</option>
<option value="LC">LC</option>
<option value="LE">LE</option>
<option value="LI">LI</option>
<option value="LO">LO</option>
<option value="LT">LT</option>
<option value="LU">LU</option>
<option value="MC">MC</option>
<option value="ME">ME</option>
<option value="MI">MI</option>
<option value="MN">MN</option>
<option value="MO">MO</option>
<option value="MS">MS</option>
<option value="MT">MT</option>
<option value="NA">NA</option>
<option value="NO">NO</option>
<option value="NU">NU</option>
<option value="OR">OR</option>
<option value="PA">PA</option>
<option value="PC">PC</option>
<option value="PD">PD</option>
<option value="PE">PE</option>
<option value="PG">PG</option>
<option value="PI">PI</option>
<option value="PN">PN</option>
<option value="PO">PO</option>
<option value="PR">PR</option>
<option value="PS">PS</option>
<option value="PT">PT</option>
<option value="PU">PU</option>
<option value="PV">PV</option>
<option value="PZ">PZ</option>
<option value="RA">RA</option>
<option value="RC">RC</option>
<option value="RE">RE</option>
<option value="RG">RG</option>
<option value="RI">RI</option>
<option value="RM">RM</option>
<option value="RN">RN</option>
<option value="RO">RO</option>
<option value="SA">SA</option>
<option value="SI">SI</option>
<option value="SO">SO</option>
<option value="SP">SP</option>
<option value="SR">SR</option>
<option value="SS">SS</option>
<option value="SV">SV</option>
<option value="TA">TA</option>
<option value="TE">TE</option>
<option value="TN">TN</option>
<option value="TO">TO</option>
<option value="TP">TP</option>
<option value="TR">TR</option>
<option value="TS">TS</option>
<option value="TV">TV</option>
<option value="UD">UD</option>
<option value="VA">VA</option>
<option value="VB">VB</option>
<option value="VC">VC</option>
<option value="VE">VE</option>
<option value="VI">VI</option>
<option value="VR">VR</option>
<option value="VT">VT</option>
<option value="VV">VV</option>
</select>
<p>CAP:<br /><input type="text" name="cap" size="10" maxlength="5"/></p>
<b>Sesso:</b><br>
<b>M</b><input type="radio" name="sesso" value="M" checked>
<b>F</b><input type="radio" name="sesso" value="F">
<p>Telefono:<br /><input type="text" name="telefono" size="20" /></p>
<p>e-mail:<br /><input type="text" name="email" size="30" /></p>
<b>Username:<br /><input type="text" name="username" size="30" /></b>
<p>Password:<br /><input type="password" name="password" size="30" /></p>
<br><input type="submit" name="invia" value="Registrati" onClick="ver()">
<input type="reset" name="reset" value="Cancella">
</form>
<?
}
?>
</body></html>