fwrite()を使用してデータを.txtファイルに送信するゲストブックフォームを作成しました。その後、別の.phpファイルで、.txtファイルを開き、データを展開し、foreachループを使用してテーブル内の項目を表示します。ForEachループで3回目の反復後に新しいテーブル行を作成するPHP
これは私の問題がある場所です。自分のデータ項目のすべてを、私の(3X Infiniteはゲストブックにサインインしたユーザーによって作成されたために)最初の列に新しい行として表示されます。
私はカウンタとモジュラスを使ってfor()とif()メソッドがあることを知っていますが、私はその配置を正しく行うことができません。私は誤って、テーブルに何も表示させたり、すべてを単一の行に表示させたりすることはありません。私は宣言された配列でこれを行う方法の例をたくさん見つけましたが、動的な意味でそれをどのように適用するかを理解することはできません。
マイコード:
<main class="Main Body BG" id="wrapper">
<table style="width:100%" border="3" cellpadding="3">
<caption>Previous Visitors</caption>
<br>
<tr>
<td bgcolor="#FBB2EA" align="center"> Name </td>
<td bgcolor="#FBB2EA" align="center"> Email </td>
<td bgcolor="#FBB2EA" align="center"> Comments </td>
</tr>
<?php
$guestBook = fopen('guestBookData.txt', 'r');
if($guestBook){
while(($dataString=fgets($guestBook)) !==false){
$dataField = explode(':', $dataString);
foreach($dataField as $df){
echo "<tr><td>".$df."</td></tr>";
}
}
fclose($guestBook);
}
?>
</table>
</main>