Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
使用PHP5.1.6和jQuery进行json_编码_Php_Jquery_Json - Fatal编程技术网

使用PHP5.1.6和jQuery进行json_编码

使用PHP5.1.6和jQuery进行json_编码,php,jquery,json,Php,Jquery,Json,PHP5.1.6没有json_encode(),所以我想使用在上找到的函数。 我尝试将此函数的输出用于ajax请求: fetchArticles: function( e ) { $.ajax({ url: 'article.php', type: 'POST', data: { id: $(this).data( 'id_prod' ) }, dataType: 'json', success: fu

PHP5.1.6没有json_encode(),所以我想使用在上找到的函数。 我尝试将此函数的输出用于ajax请求:

fetchArticles: function( e ) {
      $.ajax({
        url: 'article.php',
        type: 'POST',
        data:  { id: $(this).data( 'id_prod' ) },
        dataType: 'json',
        success: function( results ) {
          console.log('finished');
          console.log(results);
        }
      });
article.php
中,我现在有:

if ( isset($_POST['id']) ) {
 connect();
 $articles = get_articles( $_POST['id'] );
 echo json_encode( $articles ); return;
}
问题在于将结果返回到JS控制台:

  • 如果没有结果,则打印空数组
  • 如果有一个结果,则打印正确的对象
  • 但当有多个结果时,控制台上不会打印任何内容,即使word
    已完成

我可以在HTTP头和响应中看到返回了正确的数据,但它并没有打印到控制台。您能帮我解决这个问题吗?

当json文件无法转换时,它会抛出
parserror
异常,因此请尝试以下操作:

  $.ajax({
    url: 'article.php',
    type: 'POST',
    data:  { id: $(this).data( 'id_prod' ) },
    dataType: 'json',
    success: function( results ) {
      console.log('finished');
      console.log(results);
    },
    error: function(jqXHR, textStatus, errorThrown) { 
      console.debug(jqXHR, textStatus, errorThrown); 
    }
  });

当JSON无效时,它将输出您的错误。

当JSON文件无法转换时,它将抛出
parserror
异常,因此请尝试以下操作:

  $.ajax({
    url: 'article.php',
    type: 'POST',
    data:  { id: $(this).data( 'id_prod' ) },
    dataType: 'json',
    success: function( results ) {
      console.log('finished');
      console.log(results);
    },
    error: function(jqXHR, textStatus, errorThrown) { 
      console.debug(jqXHR, textStatus, errorThrown); 
    }
  });

当JSON无效时,它将输出您的错误。

您能提供一个您正在发送的JSON示例吗?这是一个HTTP响应,结果不止一个:
[{“id_新闻”:“38”,“img”:“1313153502.jpg”,“no”:“2”,“title”:“Lorem ipsum”},{“id_新闻”:“39”,“img”:“1313153981.jpg”,“no”:“2”,“title”:“ipsum-Lorem”}
oops,我不够精确。在标题中我有字符
,它会导致
语法错误:JSON.parse:错误的转义字符
。我怎样才能避免这种情况?你能提供一个你正在发送的JSON样本吗?这是一个HTTP响应,结果不止一个:
[{“id_新闻”:“38”,“img”:“1313153502.jpg”,“no”:“2”,“title”:“Lorem ipsum”},{“id_新闻”:“39”,“img”:“1313153981.jpg”,“no”:“2”,“title”:“ipsum Lorem”}
oops,我不够精确。在标题中我有字符
,它会导致
语法错误:JSON.parse:错误的转义字符
。我怎样才能避免这个?谢谢你的回答。我得到了以下输出:
SyntaxError:JSON.parse:bad转义字符
,我检查了它是否是由
字符引起的。如果我从数据中删除它,一切都会正常工作。我怎样才能避免这种情况呢?你可以在
之前使用``来逃避你的
'
。替换您的数据,现在我不记得是php函数完成的,但是json_encode是为您的。。。但是祝你好运:)我已将所有引号字符替换为
'谢谢!谢谢你的回答。我得到了以下输出:
SyntaxError:JSON.parse:bad转义字符
,我检查了它是否是由
字符引起的。如果我从数据中删除它,一切都会正常工作。我怎样才能避免这种情况呢?你可以在
之前使用``来逃避你的
'
。替换您的数据,现在我不记得是php函数完成的,但是json_encode是为您的。。。但是祝你好运:)我已将所有引号字符替换为
'谢谢!