データベースからスキャンの詳細を選択するMySQLクエリがあります。これらの詳細はレポートに表示されます。 1ページに2つの列(ほぼ2つの表)でレポートを表示し、必要なスペースを確保することが求められました。私は現在、テーブルヘッダを表示してやっている何MySqlとPHP - whileループで次の行を取得します
:
$report .= ">
<table cellspacing='0' class='at_report'>
<thead>
<tr><th colspan='8'>Area ".$row['area_name']."</th></tr>
</thead>
<tr>
<td class='simple_header' style='width:7%;'><div class='nosplit'>No.</div></td>
<td class='simple_header' style='width:8%;'><div class='nosplit'>Barcode</div></td>
<td class='simple_header' style='width:40%;'><div class='nosplit'>Product</div></td>
<td class='simple_header' style='width:5%;'><div class='nosplit'>Qty</div></td>
<td class='simple_header' style='width:7%;'><div class='nosplit'>Cost Value</div></td>
<td class='simple_header' style='width:16%;'><div class='nosplit'>Created By</div></td>
<td class='simple_header' style='width:10%;'><div class='nosplit'>Time</div></td>
<td class='simple_header' style='width:7%;'><div class='nosplit'>No.</div></td>
<td class='simple_header' style='width:8%;'><div class='nosplit'>Barcode</div></td>
<td class='simple_header' style='width:40%;'><div class='nosplit'>Product</div></td>
<td class='simple_header' style='width:5%;'><div class='nosplit'>Qty</div></td>
<td class='simple_header' style='width:7%;'><div class='nosplit'>Cost Value</div></td>
<td class='simple_header' style='width:16%;'><div class='nosplit'>Created By</div></td>
<td class='simple_header' style='width:10%;'><div class='nosplit'>Time</div></td>
</tr>
";
をそれから私は、データベースから結果をフェッチ:
while ($srow = $scan_res->fetch(PDO::FETCH_ASSOC))
は、その後、私はテーブルに結果を表示する:
$report .= "<tr ".$row_style.">
<td><div class='nosplit'>".$n."</div></td>
<td><div class='nosplit'>".$srow['barcode']."</div></td>
<td><div class='nosplit'>".$product_nd_short."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$rounded_qty."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$cur_symbol.$cn.$mcost_estimated."</div></td>
<td style='text-align:center;'><div class='nosplit'>".((strlen($srow['stocktake_staff_name'])>16)? substr($srow['stocktake_staff_name'], 0, 16)."..." : $srow['stocktake_staff_name'])."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$dt->format('H:i:s')."</div></td></tr>";
私の質問は、whileループで次の結果セットに行く方法ですテーブルに結果のセットを含む別の列を追加できますか?私はこれを試しました:
$report .= "<tr ".$row_style.">
<td><div class='nosplit'>".$n."</div></td>
<td><div class='nosplit'>".$srow['barcode']."</div></td>
<td><div class='nosplit'>".$product_nd_short."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$rounded_qty."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$cur_symbol.$cn.$mcost_estimated."</div></td>
<td style='text-align:center;'><div class='nosplit'>".((strlen($srow['stocktake_staff_name'])>16)? substr($srow['stocktake_staff_name'], 0, 16)."..." : $srow['stocktake_staff_name'])."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$dt->format('H:i:s')."</div></td>";
$row_counter++;
$n++;
$report .= "
<td><div class='nosplit'>".$n."</div> </td>
<td><div class='nosplit'>".$srow['barcode']."</div></td>
<td><div class='nosplit'>".$product_nd_short."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$rounded_qty."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$cur_symbol.$cn.$mcost_estimated."</div></td>
<td style='text-align:center;'><div class='nosplit'>".((strlen($srow['stocktake_staff_name'])>16)? substr($srow['stocktake_staff_name'], 0, 16)."..." : $srow['stocktake_staff_name'])."</div></td>
<td style='text-align:center;'><div class='nosplit'>".$dt->format('H:i:s')."</div></td>
</tr>";
しかし、すべてそれは最初のセットから結果を複製しています。
ありがとうございます!
php.netのドキュメントがあります。すべてがあります。 –