协商编程,如果嵌套

时间:2016-07-18 19:05:15

标签: php mysql

我有点困惑,不是因为我不工作这个程序。 邮件将数据库与变量进行比较。

return <span key={id}>{this.props.dataDetail.myProperty}</span>;

问题在于,如果它是相同的,如果它满足第一个if并回显while,但如果不相同,则什么都不做,什么都不打印,甚至第二个未命中。故障在哪里?

1 个答案:

答案 0 :(得分:0)

如果您想检查电子邮件是否在您的数据库中,您可以这样做。

  • prepare您的选择语句

    • 通过使用预处理语句,您的sql查询将始终格式良好,无论您的参数中是否存在可能会破坏sql语法的“怪异”字符,否则
  • 将参数绑定到语句并执行它

  • 存储声明的结果

    • 这样我们就可以在下一步中使用mysqli_stmt_num_rows($stmt)
  • 使用mysqli_stmt_num_rows($stmt)检查结果集是否包含至少1行

    • 如果是:您的电子邮件在数据库中
    • 如果不是:它不是

代码:

/**
 * define your select-statement and your parameter(s)
 * let the database prepare the statement and bind the parameters
 */
$stmt = mysqli_prepare($link, 'SELECT * FROM email WHERE email = ?');
mysqli_stmt_bind_param($stmt, "s", $correo);
$correo = "media@gmaeil.com";

/**
 * execute the statement and storing the result
 */
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);

/**
 * check the resultset and react accordingly
 */
if(mysqli_stmt_num_rows($stmt) > 0){
    echo "Ya recibió los tps por su suscripción al Boletín de Todopolicia.com";
}else{
    echo "Registramos el correo";
}