foreachを使用してmysqlテーブルの内容を出力する際に問題が発生しました。 mysqlテーブルの各エントリに対してテーブル(tr、td)などが出力されますが、$ itemをエコーするtdと/ tdタグの間には何もありません。
$sql = 'SELECT domain FROM domainsuggestions';
$domains = mysqli_query($link, $sql); // get domain suggestions from table
<table>
<tr>
<td>Domain Suggestions</td>
</tr>
<?php foreach ($domains as $item): ?>
<tr>
<td><?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8'); ?></td>
</tr>
<?php endforeach; ?>
</table>
これをforeachでどのように行うことができますか? – Nick5a1
@Nick 'foreach'は* iterable *要素を期待しています。まだデータベースからすべてのデータを取得していないため、データベースがありません。 mysqli_fetch_ *を呼び出すことで、一度に1行ずつしかデータを取得できません。なぜそれが 'foreach'である必要がありますか? – deceze
私は "PHPとMySQLを使用して独自のデータベース駆動型Webサイトを構築する - 第4版"という本を手がかりにしています。これが教えられています。私はなぜそれが動作していないと私はこの使用法が使用され、今後の章で構築されるように移動する前にしたいと思います。 – Nick5a1