我想輸出一個使用php和ajax表。現在我的函數從1個表中獲取數據,然後迭代該表的行以從不同的表中獲取行,然後形成一個表。爲了實現這一點,我已經把循環放在foreach循環中,第一個表的數據在數組中,所以我使用forean在數組上迭代,然後放置while循環。 這導致只有1行。需要幫助而foreach循環內循環只返回1行
public function GetReportData()
{
$status_list = $this->GetStatusList();
foreach ($status_list as $status)
{
$staus_orignal = $status->orignal_status;
$status_site = $status->site_status;
try
{
$db = $this->GetDBHandle();
$start_date = '05/01/2015';
$end_date = '05/02/2015';
$affiliate_id = 0;
$output_string = '';
$output_string .= '<table class="tg">
<tr>
<th class="tg-031e"><span style="color:#fff;">Disposition Type</span></th>
<th class="tg-yw4l"><span style="color:#fff;">Lead Count</span></th>
<th class="tg-yw4l"><span style="color:#fff;">Revenue</span></th>
</tr>';
$query = "exec affiliate_portal_report_data_select $staus_orignal, $affiliate_id,'". $start_date."','". $end_date."'";
$result = odbc_exec ($db, $query);
if (!$result)
{
throw new Exception ('Error from ' . $query . ': ' . odbc_errormsg());
}
else
{
while (odbc_fetch_row ($result))
{
$lead_count = odbc_result($result, 'leadcount');
$revenue = odbc_result($result, 'revenue');
$output_string .= '<tr>
<td class="tg-yw4l">'.$status_site.'</td>
<td class="tg-yw4l">'.$lead_count.'</td>
<td class="tg-yw4l dollar">'.$revenue.'</td>
</tr>';
}
}
}
catch (Exception $e)
{
$error_status = $e->getMessage();
print $error_status;
}
}
$output_string .= '</table>';
return $output_string;
}
如果你把「var_dump(odbc_num_rows($ result));」在while循環之上,它說你在$ result對象中有多少行? – Hiphop03199
看起來您需要初始化您的'$ output_string' _outside_ foreach循環。 –