我们有一个基本的 PHP 脚本来从 MySQL 数据库中提取每个作业的标题和描述,以简单地显示这些信息。这是它的样子:
$sql = "SELECT `title`, `desc` FROM jobs WHERE active = 'y'";
$query = mysql_query($sql) or die('<em><strong>SQL Error:</strong> ' . mysql_error() . '</em>');
$results = mysql_fetch_assoc($query);
<?php while($result = mysql_fetch_assoc($query)) {
echo '<div class="left_content" style="margin-top: 15px;">';
echo "<h2>{$results['title']}</h2>";
echo "<p>{$results['desc']}</p>";
echo '</div>';
} ?>
现在,这只从数据库中提取一行,但它应该提取两行。因此,我尝试了以下方法来替换该while
语句:
<?php foreach($results as $result) {
echo '<div class="left_content" style="margin-top: 15px;">';
echo "<h2>{$result['title']}</h2>";
echo "<p>{$result['desc']}</p>";
echo '</div>';
} ?>
这个说法也不行。这只是(奇怪地)显示表格第一行中每一列的第一个字符。
有谁知道为什么这不能正常工作?