javascript - 通过 JQuery 运行外部 php mysql 查询时出错

标签 javascript php jquery mysql phpmyadmin

嘿,我正在使用 JQuery 调用文件“login.php”。当我在弹出模式中单击登录时,出现错误

Access denied for user 'urbanas8'@'localhost' (using password: NO)

当我知道与数据库的连接是正确的并且它与不调用外部 PHP 文件的其他页面一起工作时。我不明白为什么会出现此错误,但也许你们中的一个人可以告诉我这是怎么回事?

登录模式

<!--LOGIN MODAL -->
<?php require_once( "./inc/connect.inc.php" ); ?>
<div class="modal fade col-sm-4 col-sm-offset-4" id="login" role="dialogue">
    <div class="modal-dialogue">
        <div class="modal-content">
        <form action="" method="POST">
            <div class="modal-header">
                <h4>Login</h4>
            </div>
            <div class="modal-body row">    
                <div class="form-group">
                    <div class="col-sm-12">
                        <input type="text" class="form-control" id="userName" placeholder="email address">
                    </div>
                    <div class="col-sm-12">
                        <input type="password" class="form-control" id="userPassword" placeholder="password">
                    </div>
                    <!-- END ADDRESS FORM -->
                </div>
            </div>
            <div class="modal-footer">
                            <button type="button" class = "btn btn-warning" id="loginButton" value="login" name="/login">Login</button><a class = "btn btn-warning" data-dismiss = "modal">Cancel</a>
            </div>
                </form>
                <script>
                $(document).ready(function(){
                    $("#loginButton").click(function(){
                        console.log("test123");
                        var username = $("#userName").val();
                        var password = $("#userPassword").val();
                        $.post("../login.php", {login:username, password:password}, function(data){
                        console.log(data);
                    });
                });
            });
            </script>
        </div>
    </div>
</div>

登录.php

<?php   

if(isset($_POST['login'])){
    echo "<br>login is set<br>";
    $user_login = strip_tags($_POST['login']);  
    echo $user_login."<br>";
    $password_login = strip_tags($_POST['password']);
    echo $password_login."<br>";
    $password_login = md5($password_login);
    echo $password_login."<br>";
    $sql = mysql_query("SELECT * FROM users WHERE email='$user_login' AND password='$password_login' LIMIT 1") or die(mysql_error());
    $userCount = mysql_num_rows($sql);
    echo $userCount."<br>";
    if($userCount == 1){
        while($row = mysql_fetch_array($sql)){

            $user_id = $row["id"];
            $user_fname = $row["first_name"];
            $user_lname = $row["last_name"];
            $user_membersince = $row["date"];

        }

        $_SESSION['user_email'] = $user_login;
        $_SESSION['user_fname'] = $user_fname;
        $_SESSION['user_lname'] = $user_lname;
        $_SESSION['user_membersince'] = $user_membersince;

        echo("logged in!");

    }else {
        echo("invalid username/password");
    }
}
?>

connection.inc.php

<?php
$db = mysql_connect("localhost:3306", "urbanas8_login", "Ure1982*") or die(mysql_error);
mysql_select_db('urbanas8_db', $db) or die(mysql_error());
?>

最佳答案

您用于登录 mysql 的用户名存在问题。您的错误消息显示用户名“urbanas8”,但您的连接文件显示“urbanas8_login”。

您没有在 login.php 中包含文件“connection.inc.php”

我建议您使用 mysqli 而不是 mysql。它已被弃用。

<?php 
//conection: 
$link = mysqli_connect("myhost","myuser","mypassw","mybd") or die("Error " . mysqli_error($link)); 

//consultation: 

$query = "SELECT name FROM mytable" or die("Error in the consult.." . mysqli_error($link)); 

//execute the query. 

$result = $link->query($query); 

//display information: 

while($row = mysqli_fetch_array($result)) { 
  echo $row["name"] . "<br>"; 
} 
?> 

关于javascript - 通过 JQuery 运行外部 php mysql 查询时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31175569/

相关文章:

javascript - 如何在单击按钮时复制 URL?

php - 无法在 php 中使用 MYSQL INSERT INTO

javascript - json数据未显示在js生成的表中

javascript - jquery:将参数和初始函数传递给jquery原型(prototype)

JavaScript/JQuery Combo 之类的下拉菜单问题

javascript - Typeahead.js 使用数组对象,在每次 onkeyup 时重新加载源

javascript - 如果 IE 标签未按预期工作

javascript - mousewheel 或 e.stopPropagation 不适用于 firefox

php - 如何通过 mail() 使用 Gmail 发送电子邮件?我把密码放在哪里?

jQuery、$(this).parent() 和 Blur()