更新查询未在MySQL数据库中设置值

时间:2018-07-01 11:59:40

标签: php mysql sql

我有以下脚本作为密码忘记系统的一部分运行。除了未使用“令牌”更新数据库之外,其他所有内容似乎都正常运行。由于其他一切工作正常(即$ str正在设置并在通过电子邮件发送的URL中使用)...我认为这一定是更新脚本的问题,但我看不到原因。我的代码在下面,非常感谢所有帮助。

if(isset($_POST["sign"])){
                include('connections/conn.php');

                $email = mysqli_real_escape_string($conn, $_POST["email"]);

                $data = $conn->query("SELECT id FROM travisor_tradesperson WHERE email='$email'");

                if ($data-> num_rows > 0) {
                    $str = "0123456789qwertyuiopasdfghjklzxcvbnm";
                    $str = str_shuffle($str);
                    $str = substr($str, 0, 10);
                    $url = "http://rhamilton461.web.eeecs.qub.ac.uk/travisor/passReset.php?token=$str&email=$email";

                    mail($email, "Reset Password", "To reset your password please visit: $url" , "From: rhamilton461@qub.ac.uk\r\n");

                    $conn->query("UPDATE travisor_tradesperson SET token = '$str' WHERE email='$email'");

                    echo "Please check your email.";

                } else {
                    echo "Please check your inputs.";
                }
            }

1 个答案:

答案 0 :(得分:0)

通过注释邮件功能的调用语句来尝试运行脚本。 您的表格可能没有更新,因为邮件功能出错。 您是否以“ 请检查您的电子邮件”为输出?