【问题标题】:How to display sql query for forgot password如何显示忘记密码的sql查询
【发布时间】:2012-11-28 14:28:57
【问题描述】:

我是 php/mysql 的新手,我想知道如何完成一个 “忘记密码” 页面,该页面显示用户在注册期间填写的问题。

我有一个查询,但我似乎无法让它工作

$emailcheck = $_POST['email'];
$checkit = mysql_query("SELECT * Security_Question FROM users WHERE email ='$emailcheck'")

所以我的问题是如何显示“安全问题”?

【问题讨论】:

  • 从您的查询中删除 *。

标签: php mysql forgot-password


【解决方案1】:

使用 mysql_fetch_array() 方法从查询资源中提取数据:

$emailcheck = $_POST['email'];
$checkit = mysql_query("SELECT Security_Question FROM users WHERE email ='$emailcheck'"); //fixed query syntax*
if (!$checkit) exit(); //don't forget to catch query errors!
$result = mysql_fetch_array($checkit);
$question = $result['Security_Question'];

$question 将保存安全问题。

【讨论】:

  • 感谢大家的快速回复,不胜感激!
【解决方案2】:

您的 SQL 不正确。

$checkit = mysql_query("SELECT Security_Question FROM users WHERE email ='$emailcheck'");

$checkit = mysql_query("SELECT * FROM users WHERE email ='$emailcheck'");

您也不应该直接在 SQL 中使用 POSTed 变量。至少先清理它,或者 mysql 转义它。最好尝试使用准备好的语句,

http://php.net/manual/en/pdo.prepared-statements.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    • 2012-07-25
    • 2015-12-09
    • 1970-01-01
    • 2012-12-20
    • 2013-05-17
    • 2011-08-26
    相关资源
    最近更新 更多