PHP AJAX数据未返回到HTML文件

时间:2017-09-22 14:58:24

标签: php jquery html ajax

我无法使用AJAX和PHP从HTML文件中获取从数据库返回的值。我有一个mysql数据库,其中包含headCode值和5个位置。使用进入headCode和一个位置。如果headCode和其中一个位置成为记录,那么PHP将返回一个值。 EG头码 - 1A,位置,维多利亚将返回值17。

我把它全部用在了Ajax上,但是使用Ajax我无法获得返回的值。

HTML代码

<script src="\jquery-3.1.0.min.js"></script>
<script>
    $(document).ready(function() {
    $('#submit').click(function(e){
        e.preventDefault();
        $.ajax({
            type:"POST",
            data:{idheadcode: $('#headcode').val(), idlocation: $('#location').val()},   
            url: "headcode_Db_connect.php",
            success: function(data){
            $("#content").html(data);
        }
    });
});
});
</script>
</head>
<body>
<form name="input">
    HeadCode: <input type="text" id="headcode">
    End Location:<input type="text" id="location">
    <input type="submit" id="submit">
</form>
    <div id="content"></div>

PHP代码

<?php
    $headcode = $_POST['headcode'];
    $location = $_POST['location'];

    $host="localhost"; // Host name 
    $username="root"; // Mysql username 
    $password="789852"; // Mysql password 
    $db_name="work"; // Database name 
    $tbl_name = "headcodes";

    // Connect to server and select database.
    $link = mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
    mysql_select_db("$db_name")or die("cannot select DB");

    $sql = "SELECT * FROM $tbl_name WHERE headcode= '$headcode'AND (location1= '$location' OR location2 = '$location' OR location3= '$location' OR location4 = '$location' OR location5 = '$location')" ;
    $result1 = mysql_query($sql, $link);

    if($result1){
        //echo "Successful";
    }
    else {
        echo "ERROR";
    }
    while ($row = mysql_fetch_assoc($result1)){
        $number = $row['number'];
    }

$myJson = json_encode ($number);
echo $number;
echo "10";

?>

php文件底部的echo 10仅用于测试。这将返回到HTML文件,证明文件正在传递数据

1 个答案:

答案 0 :(得分:1)

在您的php文件中,您正在访问错误的密钥。按如下方式访问正确的密钥:

 $headcode = $_POST['idheadcode'];
$location = $_POST['idlocation'];

也不要使用已弃用的mysql扩展名。我建议你开始使用pdo或mysqli

学习预备语句

另一个建议是,在开发环境中,始终启用错误报告,如下所示

error_reporting(E_ALL);//place at the top of the script