繁体   English   中英

我正在使用jQuery发布php文件,我正在获取500个内部服务器文件,为什么?

[英]I am using jQuery to post a php file, I am getting 500 internal server file, Why?

我正在构建一个jQuery文件来验证用户输入以在wordpress网站上登录。 我已经做了一些功能来检查wordpress数据库中的用户名,电子邮件和密码。 我的功能可以完美地处理用户名和电子邮件,但是使用密码功能时,出现500内部服务器错误。 我唯一能想到的就是会导致这是我试图包括来自wordpress的三个文件。 我必须使用class-phpass.php来检查密码,因为密码是经过哈希处理然后存储到数据库中的。 class-phpass.php文件具有一个称为CheckPassword的函数,该函数将哈希密码与纯文本密码进行比较,如果匹配则返回true,否则返回false。 我还包括了wp-settings.php和wp-load.php,只是试图让我的php文件用于我的验证。

我这样做的目的是,如果用户输入错误的用户名或密码,用户将不会被我从灯箱登录中夺走。

这是我的jQuery函数,用于检查密码:

jQuery.post("/wp-content/themes/Landing/includes/check_password.php", {password:pWd2, email:email},
            function(data){
                if( data == '1' )
                {
                    CheckPassword = true;
                }else{
                    //show that the password is NOT available
                    alert("The password and/or username you have entered is incorrect!");
                    CheckPassword = false;
                }  
            });

更新!!! ::

好的,我的php文件可以正常工作,而jQuery.post则可以正常工作。 但是,我现在有一个逻辑错误。 我正在使用chrome工具并逐步执行代码,我需要向表单返回false,以防止刷新/重定向网页。 似乎在提交我在这里就位的检查后逐步浏览了函数(数据):

if (CheckUsername == false){
        return false;
    }
    if (CheckPassword == false){
        return false;
    }
    else{
        return true;
    }

它会在进入post函数并将密码错误的情况下将CheckPassword设置为false之前检查^ ^该代码块。

该行应该建立与数据库的连接:

$connection = mysqli_connect("databaseAddress", "login", "password", "table"); //creates a database connection

DatabaseAddress ”不是有效的数据库地址,其他选项也可能都不是。 您必须填写这些凭据。 使用Wordpress时,在wp-config.php中定义了一些常量。 试试这一行:

$connection = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD); //creates a database connection

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM