php - 如何检查电子邮件地址是否存在。验证

标签 php mysql registration

我似乎不知道如何检查我的数据库中是否存在电子邮件。目前,用户使用他们的电子邮件地址使用密码登录我的网站,但目前用户可以使用同一电子邮件地址注册多次,这会导致我的网站出现大问题。已经做了一些研究,但似乎无法解决。

谁能帮帮我?

<?php       

if(isset($_POST['add']))
{
$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'pass';
$db = "db";
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not send your enquiry at this time please try again later.');
}


$phone = mysql_real_escape_string((string)$_POST['phone']);
$email = mysql_real_escape_string((string)$_POST['email']);
$password = mysql_real_escape_string((string)$_POST['password']);
$firstname = mysql_real_escape_string((string)$_POST['firstname']);
$surname = mysql_real_escape_string((string)$_POST['surname']);
$country = mysql_real_escape_string((string)$_POST['country']);
$nationality = mysql_real_escape_string((string)$_POST['nationality']);
$yearofbirth = mysql_real_escape_string((string)$_POST['yearofbirth']);  
$profession = mysql_real_escape_string((string)$_POST['profession']); 
$status = mysql_real_escape_string((string)$_POST['status']); 
$membertype = 'Registered';
$dateregistered = mysql_real_escape_string((string)$_POST['dateregistered']); 
$agreedtoterms = mysql_real_escape_string((string)$_POST['agreedtoterms']); 

$sql = "INSERT INTO members
       (phone, email, password, firstname, surname, country, nationality, yearofbirth, profession, uniquepin, status, membertype, dateregistered, agreedtoterms)
       VALUES('$phone', '$email', '$password', '$firstname','$surname','$country','$nationality','$yearofbirth','$profession','$uniquepin','$status','$membertype','$dateregistered', '$agreedtoterms')";


mysql_select_db($db);
$retval = mysql_query( $sql, $conn )or die(mysql_error());

?>

最佳答案

您可以使 email 列具有唯一约束 - 然后在尝试插入时查询将失败。

你也可以直接查询....

SELECT `email`
  FROM `members`
 WHERE `email` = '$email'
 LIMIT 1

如果您得到结果,则该电子邮件存在。

关于php - 如何检查电子邮件地址是否存在。验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6087282/

相关文章:

python - Flask 如何在某些任务(如电子邮件发送)尚未完成之前呈现页面

php - 如何在 PHP 中使用 Google 重新验证时强制提示密码?

PHP 处理脚本未拾取图像

列数受限的 PHP 可变表大小

php - 您推荐的 PHP/MySQL 用户注册系统是什么?

PHP库存管理注册

php - 使用 for 循环组合 PHP 优化 MYSQL 查询 while 循环输出

使用 LIKE 和 IN 的 MYSQL 子查询

mysql - 销毁操作从错误的表中删除

javascript - 数据库中多行的倒计时时间