Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
忘记密码电子邮件链接(php)返回错误,尽管数据库中已发布电子邮件_Php_Mysql - Fatal编程技术网

忘记密码电子邮件链接(php)返回错误,尽管数据库中已发布电子邮件

忘记密码电子邮件链接(php)返回错误,尽管数据库中已发布电子邮件,php,mysql,Php,Mysql,在从头开始构建登录/注册系统以自学PHP、mysql等的过程中,我目前正在尝试使用令牌构建一个“忘记密码”电子邮件链接系统,以重置忘记的密码 我的数据库列设置如下: id、名称、电子邮件、用户名、密码(别担心,不是纯文本!)、日期、配置文件、填充、令牌(最终标记为发送电子邮件进行重置),已使用(枚举0,1) 现在来看PHP <?php if(!isset($_GET['email'])){ echo'<form action="forgotpass

在从头开始构建登录/注册系统以自学PHP、mysql等的过程中,我目前正在尝试使用令牌构建一个“忘记密码”电子邮件链接系统,以重置忘记的密码

我的数据库列设置如下: id、名称、电子邮件、用户名、密码(别担心,不是纯文本!)、日期、配置文件、填充、令牌(最终标记为发送电子邮件进行重置),已使用(枚举0,1)

现在来看PHP

<?php
if(!isset($_GET['email'])){
                  echo'<form action="forgotpassword.php">
                      Enter Your Email Id:
                         <input type="text" name="email" />
                        <input type="submit" value="Reset My Password" />
                         </form>'; exit();
                   }

$email=$_GET['email'];

function connect() {
        $link = mysql_connect('localhost', DB_USER, DB_PASS);

        if (!$link) {
            die('Could not connect: ' . mysql_error());
        }

        $db_selected = mysql_select_db(DB_NAME, $link);

        if (!$db_selected) {
            die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
        }
    }

    $q="SELECT email FROM users WHERE email='".$email."'";
    $r=mysql_query($q);
    $n=mysql_num_rows($r);

if($n==0){echo "Email id is not registered";
    die();

}

  • 函数中有db连接,但没有调用它,请尝试添加
    connect()
    before
    $q=“从email='“$email.”的用户选择电子邮件
  • 将查询修改为:
    $q=“选择来自电子邮件地址为“”的用户的电子邮件”。修剪($email)。”修剪将有助于删除空白(如果有)
  • 尝试使用mysqli,因为mysql已被弃用

    <?php
    if(!isset($_GET['email'])){
        echo'<form action="forgotpassword.php">
        Enter Your Email Id:
        <input type="text" name="email" />
        <input type="submit" value="Reset My Password" />
        </form>'; exit();
    }
    
    $email=$_GET['email'];
    
    function connect() {
        $link = mysql_connect('localhost', DB_USER, DB_PASS);
    
        if (!$link) {
            die('Could not connect: ' . mysql_error());
        }
    
        $db_selected = mysql_select_db(DB_NAME, $link);
    
        if (!$db_selected) {
            die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
        }
    }
    connect();
    $q="SELECT email FROM users WHERE email='".trim($email)."'";
    $r=mysql_query($q);
    $n=mysql_num_rows($r);
    
    if($n==0){echo "Email id is not registered";
    die();
    
    }
    
    
    
  • 函数中有db连接,但没有调用它,请尝试添加
    connect()
    before
    $q=“从email='“$email.”的用户选择电子邮件
  • 将查询修改为:
    $q=“选择来自电子邮件地址为“”的用户的电子邮件”。修剪($email)。”修剪将有助于删除空白(如果有)
  • 尝试使用mysqli,因为mysql已被弃用

    <?php
    if(!isset($_GET['email'])){
        echo'<form action="forgotpassword.php">
        Enter Your Email Id:
        <input type="text" name="email" />
        <input type="submit" value="Reset My Password" />
        </form>'; exit();
    }
    
    $email=$_GET['email'];
    
    function connect() {
        $link = mysql_connect('localhost', DB_USER, DB_PASS);
    
        if (!$link) {
            die('Could not connect: ' . mysql_error());
        }
    
        $db_selected = mysql_select_db(DB_NAME, $link);
    
        if (!$db_selected) {
            die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
        }
    }
    connect();
    $q="SELECT email FROM users WHERE email='".trim($email)."'";
    $r=mysql_query($q);
    $n=mysql_num_rows($r);
    
    if($n==0){echo "Email id is not registered";
    die();
    
    }
    
    //您可以使用以下代码:
    
    //您可以使用以下代码:
    
    回显
    $q
    ,以便查看查询是否正在格式化,我怀疑
    $email
    中包含空格该空格来自何处?不要注意数据库或表单入口中的任何内容有时使用“粘贴”或浏览器将其放入。echo是如何工作的?不幸的是,我现在在连接我的站点时遇到了问题。我要和主持人联系。UGH在我的函数完成后显示空白并添加连接。回显
    $q
    ,以便您可以查看查询是否正在格式化,我怀疑的是
    $email
    包含空白该空白来自何处?不要注意数据库或表单入口中的任何内容有时使用“粘贴”或浏览器将其放入。echo是如何工作的?不幸的是,我现在在连接我的站点时遇到了问题。我要和主持人联系。在我的函数完成后,它显示为空白并添加连接。