获取由ajax函数调用的php页面中的参数

我正在使用jquery和ajax调用php页面res.php。 代码是: –

$('#submit_button').click(function () { buildingVal = $("#building"); levelVal = $("#level"); data = 'building=' + buildingVal.val() + 'level=' + levelVal.val(); $.ajax( { url: "res.php", type: "POST", data: data, success: function (data) { $('#npc').html(data); } });​ }); 

res.php页面代码是: –

 <?php //connect to the database $con = mysql_connect("localhost","root","12345") or die("error ".mysql_error()); //connect to the travian table mysql_select_db("trav",$con) or die("error ".mysql_error()); $building = mysql_real_escape_string($_GET['building']); $level = mysql_real_escape_string($_GET['level']); $query = "select * from "; $query = $query . $building; $query = $query . "where lvl=" . $level; $query = $query . ";"; $result = mysql_query($query) or die('Error in Child Table!'); $data = mysql_fetch_assoc($result); echo ''; ?>

我收到了错误

 Notice: Undefined index: building in C:\xampp\htdocs\debal\res.php on line 8 Notice: Undefined index: level in C:\xampp\htdocs\debal\res.php on line 9 Error in Child Table! 

我如何提取发送到页面的参数,并在sql查询中使用它们从数据库中的表中检索数据。 请你能救我..

问题是你是通过AJAX发送$ _POST值并尝试在你的res.php页面上从$ _GET中分配变量。 更改AJAX函数以type: "GET" ,或

 $building = mysql_real_escape_string($_POST['building']); $level = mysql_real_escape_string($_POST['level']); 

在res.php上

你也没有正确发送’level’变量,你错过了’&’

 data = 'building=' + buildingVal.val() + '&level=' + levelVal.val(); 
Lumber=$data["lumber"]Clay=$data["clay"]Iron=$data["iron"]Crop=$data["crop"]