prova cosi
elseif(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
$messaggio=urlencode("mail non corretta");
header('location:'.'frm_mail.php'.'?msg='.$messagg io);
exit;
}
spero vada bene
prova cosi
elseif(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
$messaggio=urlencode("mail non corretta");
header('location:'.'frm_mail.php'.'?msg='.$messagg io);
exit;
}
spero vada bene
ho messo così:
mi da errore...Codice PHP:$mail=trim($_POST['email']);
$controllo_email=mysql_query("SELECT email FROM members WHERE email='$mail'")
or die("errore nella query;".mysql_error());
$num=mysql_num_rows($controllo_email);
if($num > 0)
{
echo "Impossibile completare la registarzione: qualcuno ha già efettuato la registarzione con l'e-mail '$email'; utilizzane un'altra!";
}else{//altrimenti eseguo la query
if(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
$messaggio=urlencode("mail non corretta");
header('location:'.'register.php'.'?msg='.$messaggio);
exit;
}
//send member information
$message =
Warning: Cannot modify header information - headers already sent by (output started at /web/htdocs/www./register.php:148) in /web/htdocs/www./register.php on line 271
ho modificato il codice prova cosiOriginariamente inviato da Lino80
ho messo così:
[PHP]$mail=trim($_POST['email']);
$controllo_email=mysql_query("SELECT email FROM members WHERE email='$mail'")
or die("errore nella query;".mysql_error());
$num=mysql_num_rows($controllo_email);
if($num > 0)
{
echo "Impossibile completare la registarzione: qualcuno ha già efettuato la registarzione con l'e-mail '$email'; utilizzane un'altra!";
}
if(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
echo "mail non corretta";
}
Così funzionano i controlli mail..però ora non mi completa la registrazione... non mi stampa a video e non inserisce nel database questo:Codice PHP:$mail=trim($_POST['email']);
$controllo_email=mysql_query("SELECT email FROM members WHERE email='$mail'")
or die("errore nella query;".mysql_error());
$num=mysql_num_rows($controllo_email);
if($num > 0)
{
echo "<div class='free'><blockquote>Impossibile completare la registrazione: qualcuno ha già effettuato la registrazione con l'Email '$email'; utilizzane un'altra!</blockquote></div>";
}
if(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
echo "<div class='free'><p class='rightTxt1'><button onClick='history.back()'>Indietro</button></p><blockquote>Indirizzo Email non corretto</blockquote></div>";
//send member information
$message =
'
Thanks for registering.
Please keep the following for your records:
Username: '.$_REQUEST['email'].'
Password: '.$password;
//mail member
@mail($_REQUEST['email'],'Member Registration',$message,'From:'.$settings['email']);
$mailmessage = '<div align=center class="pageSubTitle">Username and Password sent to '.$_REQUEST['email'].'</div>';
@mail($settings['email'],'How did you hear about us',$_REQUEST['hear_about'],'From:'.$settings['email']);
$insertSQL = sprintf("INSERT INTO members (name, address, city, `state`, zip, active, email, password, phone) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)",
GetSQLValueString($_POST['name'], "text"),
GetSQLValueString($_POST['address'], "text"),
GetSQLValueString($_POST['city'], "text"),
GetSQLValueString($_POST['state'], "text"),
GetSQLValueString($_POST['zip'], "text"),
GetSQLValueString($_POST['active'], "text"),
GetSQLValueString($_POST['email'], "text"),
GetSQLValueString(md5($password), "text"),
GetSQLValueString($_POST['phone'], "text"));
mysql_select_db($database_myconn, $myconn);
$Result1 = mysql_query($insertSQL, $myconn) or die(mysql_error());
echo "<h3>You are now registered, check your email for username and password</h3> [url='login.php']Sign In[/url]";
$message =
'A new user has signed up to '.$settings['domain'].'
Member Info:
'.$_REQUEST['name'].'
'.$_REQUEST['phone'].'
'.$_REQUEST['email'].'
';
mail($settings['email'],"New Registered User",$message,"FROM:".$settings['email']);
}
}
?>
Codice PHP:echo "<h3>You are now registered, check your email for username and password</h3> [url='login.php']Sign In[/url]";
?>
![]()
Per quanto ne sappia:
1) la funzione eregi è deprecata...
2) l'errore (un warning non è propriamente un errore) che ti compariva prima (Cannot modify header information etc etc) dipende dal fatto che hai in precedenza dato un altro output... (ad esempio un echo, codice html, o un rigo vuoto)
buongiorno, così funziona tutto correttamente:
dite che la funzione verifica mailCodice PHP:$mail=trim($_POST['email']);
$controllo_email=mysql_query("SELECT email FROM members WHERE email='$mail'")
or die("errore nella query;".mysql_error());
$num=mysql_num_rows($controllo_email);
if($num > 0)
{
echo "<div class='free'><blockquote>Impossibile completare la registrazione: qualcuno ha già effettuato la registrazione con l'Email '$email'; utilizzane un'altra!</blockquote></div>";
}else{//altrimenti eseguo la query
if(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
{
echo "<div class='free'><p class='rightTxt1'><button onClick='history.back()'>Indietro</button></p><blockquote>Indirizzo Email non corretto</blockquote></div>";
}else{//altrimenti eseguo la query
//send member information
$message =
non è completa?Codice PHP:if(!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $mail))
oppure va bene?
grazie![]()