簡體   English   中英

jQuery AJAX PHP發布方法問題

[英]JQuery AJAX PHP post method issue

我正在嘗試通過AJAX將HTML文件中的值發布為請求,並以JSON格式的字符串作為PHP的響應。

我做了以下

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 />");                                                      
            })
}

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文件中檢索Year值。 我也嘗試過使用$ .post和$ .ajax函數。 在$ .ajax函數中,當我刪除dataType:“ json”時,post方法有效。

如果您的php代碼工作正常,請更改您的代碼。

 $(document).ready(function() {
    var pageLoad = function() {
        $("#submit").click(function(){
          submitClick();
        })
    });
    pageLoad();
 });

如果要單擊“ #submit”提交表單/數據,則無需pageLoad函數

 $(document).ready(function() {
        $("#submit").click(function(){
          submitClick();
        });
    });
 });

$ .getJSON()方法執行HTTP GET,而不執行POST。 您需要使用$ .post()。

$.post(url, dataToBeSent, function(data, textStatus) {
  //data contains the JSON object
  //textStatus contains the status: success, error, etc
}, "json");

單擊此處獲取解決方案更多解決方案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM