Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.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
Javascript $.getJSON不起作用_Javascript_Php_Jquery_Json - Fatal编程技术网

Javascript $.getJSON不起作用

Javascript $.getJSON不起作用,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我正在尝试使用PHP访问数据库,并使用jQuery显示结果。 但是,当用户使用$.getJSON时,它甚至无法显示警报函数 这是我的jQuery文件: $(window).load(function() { $.getJSON("getWeb.php", function(json) { alert('I call it!');}); /*-----------if I use $.get(), I can get an output----------- * $.get(

我正在尝试使用PHP访问数据库,并使用jQuery显示结果。 但是,当用户使用$.getJSON时,它甚至无法显示警报函数

这是我的jQuery文件:

 $(window).load(function() {
 $.getJSON("getWeb.php", function(json) {
     alert('I call it!');});
 /*-----------if I use $.get(), I can get an output-----------

  * $.get("getWeb.php", function(json) {  //it works
  * alert(json);
  */
  }); 
这是我的PHP文件:

--------getWeb.php----
    $query = "SELECT webname FROM webinfo";
    $result = db_connection($query);
    $webs = array();
    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
        array_push($webs, array('webname' => $row['webname']));
    }
    echo json_encode(array("webs" => $webs));
    exit;
    //db_connection is a function used to connect the database...
如果我只调用PHP文件,我可以得到结果,如果我使用$.get函数,我也可以得到PHP的结果,但是如果我调用$.getJSON函数,我甚至看不到警报结果

我是一个学习jQuery的初学者,有人能帮我解决这个问题吗? 多谢各位

-----以下是php文件和$.get函数的输出:

已弃用:mysql\u connect:mysql扩展已弃用,将来将被删除:请在第14行的D:\Software\apache\Apache24\htdocs\inputWebPage\getWeb.php中使用mysqli或PDO
{webs:[{webname:www},{webname:sssss},{webname:ssssssqqqq}]}

如果我没记错的话,getJSON就是从一个同样是JSON格式的文件中获取一个以JSON格式打包的对象。您的php文件不是json格式的,而是php代码,用于获取json格式的数据库信息。如果要执行文件中的php代码,我认为您不想在这里使用getJSON。您可以使用$.ajax调用,或者,如果您确实想直接从文件中获取json编码的数据,则需要将getJSON调用指向实际的json文件。这是getJSON工作原理的一个示例:@user2011985显示的PHP代码JSON在返回结果之前对其进行编码,这在原则上很好。OP还注意到,通过其他方法获得相同的JSON文件。get,直接PHP访问,一切都很好。啊,我的错。在这种情况下,我不确定是什么导致了这个问题。由于$.getJSON需要JSON编码的数据,如果您的页面返回无效的JSON数据,它将以静默方式失败,$.get或$.ajax仍将返回数据。由于SQL错误,它不再是JSON格式,因此不会返回。