2012-02-14 72 views
0

我有一个的jQuery AJAX调用下面的PHP脚本AJAX查询没有返回JSON数组

function report_range($time, $ht, $start_date, $end_date) { 
     $query = mysql_query("SELECT type, count(*) FROM tracking WHERE htcode = '$ht' AND type IN ('viewed', 'shared', 'printed', 'emailed', 'used') AND date >= '$start_date' AND date <= '$end_date' GROUP BY type"); 
     while ($result = mysql_fetch_assoc($query)){ 
      switch ($result['type']){ 
       case 'viewed': 
        $viewed = $result['count(*)']; 
        break; 
       case 'shared': 
        $shared = $result['count(*)']; 
        break; 
       case 'used': 
        $used = $result['count(*)']; 
        break; 
       case 'emailed': 
        $emailed = $result['count(*)']; 
        break; 
       case 'printed': 
        $printed = $result['count(*)']; 
        break; 
      } 

     } 
     //build the table rows 
     return '<tr><td>'.$time.'</td><td>'.$viewed.'</td><td>'.$shared.'</td><td>'.$used.'</td><td>'.$printed.'</td><td>'.$emailed.'</td></tr>'; 
//this is where the problem is, i dont think i am returning the value right. 

    } 

//创建变量发送到JSON

$stat_1 = report_range('Today', '1672627', date('Y-m-d'), date('Y-m-d')); 
    $stat_2 = report_range('Yesterday', $_POST['htcode'], date('Y-m-d', strtotime('yesterday')), date('Y-m-d', strtotime('yesterday'))); 
    $stat_3 = report_range('Past 30 Days', $_POST['htcode'], date('Y-m-d', strtotime('30 days ago')), date('Y-m-d')); 
    $stat_4 = report_range('All Time', $_POST['htcode'], date('Y-m-d', strtotime('3600 days ago')), date('Y-m-d')); 

//创建JSON数组

echo json_encode(array(
     'stat_1'=>$live_1, 
     'stat_2'=>$live_2, 
     'stat_3'=>$live_3, 
     'stat_4'=>$live_4 
    )); 

我似乎无法得到一个json数组,包含表格行我在福建nction。

jquery正在工作,因为它显示空值。

+0

你可以发布你的jQuery功能。还要将$ live_x vars更改为$ stat_x vars – 2012-02-14 02:48:04

+0

您并未声明$ live *变量。 – CBusBus 2012-02-14 02:49:16

回答

3

不应该那个$ live_1等var是$ stat_1吗?

echo json_encode(array(
     'stat_1'=>$stat_1, 
     'stat_2'=>$stat_2, 
     'stat_3'=>$stat_3, 
     'stat_4'=>$stat_4 
    )); 
+0

好的废话..我是不好意思..今天我一直这样做太久了。感谢那个......让我们成为你们其他人的教训。当你重新格式化你的代码时,检查你的变量。 – 2012-02-14 02:50:35