从javascript获取价值到php并用php网格填充div(即在php文件中)

时间:2014-03-01 11:44:04

标签: javascript php jquery html ajax

这是我的javascript代码:

  $(document).ready(function()
{

 $("li").click(function() {

    var childid = $(this).attr("id"); /*  this works(gets id of clicked li)  */

    if(childid)
    {
        var child = childid.split(';;;');

        $('#Grid').load('../Grid/FillWithGrid.php',{"name" : child[1], "family" : child[0]});    /*   I think problem is here */
    }
 })

})




  <div class="Grid" id="Grid">
  This is index.php where it must be pasted
</div>

这是FillWithGrid.php:

  <?PHP
 header('Content-Type: text/html; charset=utf-8');

 require_once("../Grid/conf.php");

 $conn = mysql_connect(PHPGRID_DB_HOSTNAME,PHPGRID_DB_USERNAME,PHPGRID_DB_PASSWORD);
 $CHName = mysql_real_escape_string($_GET["name"]);  /*ERROR : Undefined value*/
 $CHFamily = mysql_real_escape_string($_GET["family"]);   /*ERROR : Undefined value*/
 mysql_close($conn);

if($CHFamily & $CHName)
{
   $query = "select * from `view_marks` where `name` = '$CHName' and `family` =  '$CHFamily' ";

   $dg1 = new C_DataGrid($query);
   $dg1->enable_advanced_search(true);

   $dg1 -> display();

 }
 ?>

1)我无法从javascript获取childname和childfamily。它说'未定义的名字'和'未定义的家庭'。所以它没有从javascript获得价值。 ---决定!!!

2)点击li ...

时显示空白页面

有没有人知道。请帮忙

感谢!!!

3 个答案:

答案 0 :(得分:2)

当您为加载函数提供数据时,请求方法将是POST而不是GET。在PHP中使用$ _POST获取值而不是$ _GET,如下所示。

 $CHName = mysql_real_escape_string($_POST["name"]);  
 $CHFamily = mysql_real_escape_string($_POST["family"]); 

有关load()的更多信息,请参阅this

答案 1 :(得分:0)

查询中有错误

$query = "select * from `view_marks` where `name` = '$CHName' and '$CHFamily' ";

应该是

$query = "select * from `view_marks` where `name` = '$CHName' and `family` = '$CHFamily' ";

如果我错了,我不知道它可能是什么; - )

〜干杯

答案 2 :(得分:0)

尝试使用console.log()来检查是否传递了值,例如:

$('#Grid').load('../Grid/FillWithGrid.php',{"name" : child[1], "family" : child[0]}, function(responseText){console.log(responseText)});

在FillWithGrid.php中:

print_r($_GET);
die;

也许它可以提供帮助......如果不是 - 请在浏览器开发者工具中检查HTTP请求/响应。

发给我一个链接(通过priv)问题,也许我可以解决它。

〜干杯