我已经研究了这段代码将近一周了,似乎无法摆脱它。我从如下数据库中获取行:
身份证、商业、金融、商业、金融、商业等行业
1-1
2
3
4-4
到目前为止,我的发言如下:
// Make the query:
$qu = "SELECT * FROM log WHERE account='".$account."' ORDER BY timelog DESC $pages->limit";
$re = @mysqli_query ($dbc, $qu); // Run the query.
$roarr = array();
while ($row = mysqli_fetch_array($re, MYSQLI_ASSOC)) {
$roarr[$row['account']][$row['content']][$row['type']] = $row['quantity'];
} // End of WHILE loop.
//print_r($roarr);
echo'
<tr> </tr>
<tr>
<td align="left"><b>Account</b></td>
<td align="left"><b>6Kg(E)</b></td>
<td align="left"><b>13Kg(E)</b></td>
<td align="left"><b>38Kg(E)</b></td>
<td align="left"><b>6Kg(F)</b></td>
<td align="left"><b>13Kg(F)</b></td>
<td align="left"><b>38Kg(F)</b></td>
<td align="left"><b>Date Created</b></td>
</tr>
';
$dataarr = array();
foreach($roarr as $account => $dataarr) {
$bg = ($bg=='#eeeeee' ? '#ffffff' : '#eeeeee');
echo '
<tr bgcolor="' . $bg . '">
<td align="left">'. $account .'</td>
';
foreach($dataarr as $content => $data) {
if($content == "E") {
echo '<td align="left">', (isset($data['6']) ? $data['6'] : ' '), '</td>';
echo '<td align="left">', (isset($data['13']) ? $data['13'] : ' '), '</td>';
echo '<td align="left">', (isset($data['38']) ? $data['38'] : ' '), '</td>';
} // Then I GET STUCK on the Else Part! HOW Do I display $content == "F" data on the right hand side?
} //End Foreach
} //End Foreach
我打算这样显示我的结果:
帐户: 6KG(E) \x{e76f}\x{e76f}\x{
23494 -23494
但是我被困住了。
问题:如何安排以这种格式获取的结果?
编辑:--我已经更改了数据库,以便更多地关注这个问题:由于每个帐户的查询都是取的,所以只有一个帐户,其行显示在上面的数据库中。
这是$roarr生成的数组:
阵列( 23494 =>阵列(F =>阵列(6 => 2 38 => 7)E =>阵列( 38 => 10 13 => 5))
先谢谢你
发布于 2013-04-23 10:30:46
您需要的是这样的东西,而不是内部的foreach循环:
echo '<td align="left">', (isset($dataarr['E']['6']) ? $dataarr['E']['6'] : ' '), '</td>';
echo '<td align="left">', (isset($dataarr['E']['13']) ? $dataarr['E']['13'] : ' '), '</td>';
echo '<td align="left">', (isset($dataarr['E']['38']) ? $dataarr['E']['38'] : ' '), '</td>';
echo '<td align="left">', (isset($dataarr['F']['6']) ? $dataarr['F']['6'] : ' '), '</td>';
echo '<td align="left">', (isset($dataarr['F']['13']) ? $dataarr['F']['13'] : ' '), '</td>';
echo '<td align="left">', (isset($dataarr['F']['38']) ? $dataarr['F']['38'] : ' '), '</td>';
https://stackoverflow.com/questions/16166618
复制相似问题