Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.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
JQuery AJAX PHP post方法问题_Php_Jquery_Mysql_Ajax - Fatal编程技术网

JQuery AJAX PHP post方法问题

JQuery AJAX PHP post方法问题,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我试图通过AJAX将值作为请求发布到HTML文件中,并从PHP获取JSON格式的字符串作为响应 我已经做了以下工作 Javascript文件: $(document).ready(pageLoad); function pageLoad() { $("#submit").click(submitClick) } function submitClick() { var data = {Year:"2005"}; $.getJSON("db/connect.php",

我试图通过AJAX将值作为请求发布到HTML文件中,并从PHP获取JSON格式的字符串作为响应

我已经做了以下工作

Javascript文件:

$(document).ready(pageLoad);

function pageLoad()
{
     $("#submit").click(submitClick)
}

function submitClick()
{
    var data = {Year:"2005"};
    $.getJSON("db/connect.php", data, fetchData);
}

function fetchData(data)
{
    $.each(data, function(index, element) { 
        $("#content").append(data[index].Name + "<br />");                                                      
            })
}
$(文档).ready(页面加载);
函数pageLoad()
{
$(“#提交”)。单击(提交单击)
}
函数submitClick()
{
var数据={年份:“2005”};
$.getJSON(“db/connect.php”,data,fetchData);
}
函数获取数据(数据)
{
$.each(数据、函数(索引、元素){
$(“#内容”).append(数据[索引].Name+”
); }) }
PHP文件

<?php
$server = "localhost";
$user = "amey";
$pass = "";
$database = "education";

echo $_POST["Year"];

    $conn = mysql_connect($server, $user, $pass) or die("Unable to connect to MySQL");
    mysql_select_db($database, $conn);
    $query = "select * from BabyNames";
    $result = mysql_query($query) or die(error_get_last());

    $json = array();

    while($row = mysql_fetch_array($result))
    {
        $json[] = $row; 
    }

    echo json_encode($json);
    mysql_close($conn);
?>


我无法在PHP文件中检索年份值。我还尝试使用$.post和$.ajax函数。在$.ajax函数中,当我删除数据类型“json”时,post方法可以工作。

请在代码中进行更改, 如果你的php代码运行良好

 $(document).ready(function() {
    var pageLoad = function() {
        $("#submit").click(function(){
          submitClick();
        })
    });
    pageLoad();
 });
如果您希望在单击“#提交”时提交表单/数据,则无需页面加载功能

 $(document).ready(function() {
        $("#submit").click(function(){
          submitClick();
        });
    });
 });
$.getJSON()方法执行HTTP GET而不是POST。您需要使用$.post()


您的代码中
数据类型:“json”
在哪里?
数据。Name
是否尝试过?您是否得到正确有效的
json
响应?为什么要回显此
echo$_POST[“Year”]
在你回显json的同一个文件中?我无法发布。PHP不读取$u POST['Year']。echo只是为了调试,我试过了,但问题是PHP无法从请求中读取POST变量。既不在$.ajax方法中,也不在$.post方法中。
$.post(url, dataToBeSent, function(data, textStatus) {
  //data contains the JSON object
  //textStatus contains the status: success, error, etc
}, "json");