Mysql检查数据库中是否存在电子邮件,并保持返回0

时间:2015-12-05 04:23:26

标签: php mysql

好的,继续更新。 $ userexists保持为0.即使用户存在于数据库中。它应该勾选为1,因为用户存在。

$email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL);
if ($email === ''){
    unset($email);
}
   $nemail = test_input($email);


$userexists=0;
$test = <<<SQL
SELECT email FROM `Members` WHERE email='$nemail'
SQL;
if(!$result = $mysqli->query($test)){
    die('There was an error running the query');
}
while($row = $result->fetch_assoc()){
    $nemail = $row['email'];
    $userexists==1;
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}

1 个答案:

答案 0 :(得分:2)

代码的这一部分$userexists==1;

删除等号。我们不在这里比较,你需要&#34;分配&#34;。

$userexists=1;

参考文献:

另外,您正在使用的test_input()函数不是针对SQL注入进行测试的最佳选择。

请使用准备好的声明: