将变量从AJAX传递到PHP Web API

时间:2015-01-05 01:18:15

标签: php ajax

我在php中有一个简单的web api,它调用一个名为getData的函数,该函数位于index.php文件中,如下所示:

的index.php

<?
session_start();
require("lib.php");
require("api.php");

header("Content-Type: application/json");

    getData($name);

exit();
?>

getData函数在api.php文件中,如下所示:

api.php

<?
function getData($name) {
$result = query("select * FROM table where name = $name");
    print json_encode($result);
}

?>

我想在我的javascript中使用AJAX检索json,如下所示:

$(document).ready(function () {

    var url = 'webAPI/index.php';
    var j = [];
    $.ajax({
           type: 'GET',
           url: url,
           dataType: 'json',
           success: function(data) { j = data;},
           async: false
           });

如果没有传递$ name变量,这是完美的,但是我需要将$ name变量从AJAX传递到index.php文件以获得正确的sql结果。我试过让AJAX成为一个帖子,但无济于事。

1 个答案:

答案 0 :(得分:1)

GET AJAX请求发送的变量可从超全局$_GET获得。例如,如果这是您的jQuery代码:

 $.ajax({
       type: 'GET',
       url: url,
       dataType: 'json',
       data: { name:"something" }, // you can replace name with whatever you need
       success: function(data) { j = data;},
       async: false
 });

然后您可以使用$_GET["name"]访问名称变量。因此,您可以使用getData($_GET["name"]);

从客户端发送的数据

另外,请确保使用正确的功能访问数据库,例如MySQLi for PHP