doufeng5059 2011-04-20 16:03
浏览 36
已采纳

php5和jQuery ajax返回数组

I'm trying to figure out how to use jQuery's .ajax() to query a MySQL table and return the results as an array. This is what I have so far:

jQuery:

$.ajax({url: 'procedures?',
    data: {Action: 'GetSuggestList' },
    dataType: "json",
    success: function(oData){
        if(oData.errormsg != null)
              alert('failed: ' + oData.errormsg);
        alert(oData.results);
}});

PHP code (with the assumption that my mysql_connect() and mysql_select_db() are valid):

 $pcAction = isset( $_REQUEST['Action'] ) ? $_REQUEST['Action'] : "" ;
 if($pcAction=='GetSuggestList'){
     $tb_name = 'suggestions';
     echo json_encode( DoGetSuggestList($tb_name) ) ;
 }

 function DoGetSuggestList($ptb_name){
     $qry_suggest = mysql_query('SELECT * FROM ' . $ptb_name . ' WHERE Active ORDER BY updated DESC');
     $rsl_suggest = mysql_fetch_array($qry_suggest);
     $jSONreturn = array("errormsg" => $jSONerror, "results" => $rsl_suggest);

     return $jSONreturn;
 };

I'm not sure what else needs to be in my AJAX success function in order to iterate through each resulting row in the array...

  • 写回答

1条回答 默认 最新

  • douqian1517 2011-04-20 16:32
    关注

    I think you need to have the results from the query dumped into an associate array before you json_encode() them.

    while( ... ) {
        $a_results[] = array( 's_column' => $row['column'] );
    }
    
    return json_encode( array('errormsg' => $jSONerror, 'results' => $a_results) );
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度