本帖最后由 zl2727 于 2013-12-10 16:14:43 编辑

解决方案 »

  1.   

    $r['a'] = 123;
    echo json_encode($r); //得到 {"a":123}$a[] = $r;
    $a[] = $r;
    $a[] = $r;
    echo json_encode($a); //得到 [{"a":123},{"a":123},{"a":123}]你应该知道怎么写了吧?虽然 php 的 json 函数只支持 utf-8 编码,但你可以要求数据库返回 utf-8 编码的数据
      

  2.   

    版主您好 我将代码修改成这样 可还是不行 我是学.net的 Php实在太差 麻烦您在指导一下 谢谢
    $a=array();
     while($row = $dsql->GetArray()) {
     $a[]= $row; 

    $a='{"status":"1","result":'.json_encode($a).',"moreUrl":"'.$moreurl.'"}'; 
    $a = iconv("gbk", "UTF-8", $a);
     $a=json_decode($a, true); 
    echo json_encode($a);
      

  3.   

    AJAX返回 {"status":"1","result":[],"moreUrl":"http:\/\/"}
    result 是空的
      

  4.   

    1、你用的是什么数据库?不会是 Access 吧?
    2、如果你无法让数据库返回 utf-8 编码的数据,可以这样
    function gtou($s) { return iconv('gbk', 'utf-8', $s); }$a=array();
    while($row = $dsql->GetArray()) {
      $a[]= array_map('gtou', $row); 

    3、这样构造输出数据
    $res = array(
      'status' => '1',
      'result' => $a,
      'moreUrl' => $moreurl,
    );
    echo join_encode($res);
      

  5.   

    版主您好 这样写 输出也是对的 

    AJAX返回 {"status":"1","result":[],"moreUrl":"http:\/\/"}
    result 是空的
    我的QQ 272718467 要不您加下我的QQ指导一下 或者 关注我一下 可以吗?
      

  6.   

    这样直接返回数据库读出的数据 AJAX 就可以接到 result 
    //$a='{"status":"1","result":[{"id":"1","title":"补水润肤膏 真的很好 很补水 皮肤有弹性","goodsTitle":"补水润肤膏 真的很好 
    很补水 皮肤有弹
    性","price":"59.9","imgUrl":"http:///sadas213/","goodsUrl":"http:///uploads/allimg/c131205/
    13V23912150-114L_lit.jpg","brandName":"","brandUrl":"http:///dsadasdas/"},{"id":"2","title":"补水润肤
    222","goodsTitle":"补水润肤
    222","price":"59.9","imgUrl":"http:///sadas213/","goodsUrl":"http:///uploads/allimg/c131205
    /13V23912150-114L_lit.jpg","brandName":"","brandUrl":"http:///dsadasdas/"}],"moreUrl":"http://shuig
    uo/"}'; 
      

  7.   


    $JsonStr='[
    {"id":"1","name":"\u5f20\u96ea\u6885","age":"27","subject":"\u8ba1\u7b97\u673a\u79d1\u5b66\u4e0e\u6280\u672f"},
    {"id":"2","name":"\u5f20\u6c9b\u9716","age":"21","subject":"\u8f6f\u4ef6\u5de5\u7a0b"}
    ]';
    //被解析的字符串只能用雙引號,而不能用單引號
    $Json=json_decode($JsonStr,TRUE);
    echo '<pre>',var_dump($Json),'</pre>'; $array=array('a'=>'A','B'=>2); $a=json_encode($array);
    echo '<pre>',var_dump($a),'</pre>'; $a=serialize($array);
    echo '<pre>',var_dump($a),'</pre>'; $a=unserialize($a);
    echo '<pre>',var_dump($a),'</pre>';die();
      

  8.   

    sibang 您好 我没有找到单双引号问题 现在还是没有解决  我是 php+ajax+json
      

  9.   

    谢谢 大神们的支持 由于小弟疏忽  在AJAX请求时 路径写错 其他啥问题都没有  结贴!!!