php - 使用 php 检查重复的电子邮件条目

标签 php jquery mysql

我正在尝试检查表单提交中是否有重复的电子邮件。

我的 php 看起来像这样

$value = $_POST['name'];
$value2 = $_POST['email'];
$value3 = $_POST['address'];
$value4 = $_POST['city'];
$value5 = $_POST['state'];
$value6 = $_POST['zip'];
$value7 = $_POST['primary'];
$value8 = $_POST['secondary'];

$sql = "INSERT INTO fusiodoseOne (`name`, `email`, `address`, `city`, `state`, `zip`, `primary`, `secondary`) VALUES ('$value', '$value2', '$value3', '$value4', '$value5', '$value6', '$value7', '$value8')";

if(!mysql_query($sql)){
    die('Error : ' . mysql_error());
}

//

function createUser($email){
   $sql = "SELECT count(email) FROM fusiodoseOne WHERE email='$value2'" ;

   $result = mysql_result(mysql_query($sql),0) ;

   if( $result > 0 ){
    die( "There is already a user with that email!" ) ;
   }//end if

我做错了什么。重复的电子邮件条目仍在处理中

jquery 看起来像这样

$.post("demo.php",$(this).serialize(),function(data){    
        $('.successMessageHolder').show();
        $('.alertMsg').hide();
    });

最佳答案

我没有得到 createUser() 函数。

首先:您将 $email 作为参数传递,但不使用它,即您使用 $value2 代替,它在全局范围内,并且除非您将其作为参数传递(您的 $email 中的 $email ),否则您无法访问它case) 或在函数体中声明全局。看来应该是:

function createUser($email){
   $sql = "SELECT count(email) FROM fusiodoseOne WHERE email='$email'" ;

   $result = mysql_result(mysql_query($sql),0) ;

   if( $result > 0 ){
    die( "There is already a user with that email!" ) ;
   }//end if

第二:函数到底在什么时候被调用?这是一个定义,但是它在哪里以及如何使用?

关于php - 使用 php 检查重复的电子邮件条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16778510/

相关文章:

mysql - 查询右侧 4 列时结果为空

php - Doctrine2 挑战,我有 OneToMany,但没有 ManyToOne,

javascript - 在点击事件上调用 Ajax,而不是 document.ready

javascript - 如何(以编程方式)获得完全计算的 HTML(而不是源 HTML)?

mysql - 如何仅使用 'group_concat' 过滤表 mysql 中的行

php - MySQL CSV 导入问题

php - 智能(?)数据库缓存

apache2 - 一次只允许一个 session

if/elseif/else 的 PHP 语法,但有 4 个条件

javascript - 通过使用 anchor 标记中的 data-id 属性,使用 jquery 将值传递到模态弹出窗口