Вопрос
Может ли кто-нибудь помочь с этим, пожалуйста?
Я извлекаю результаты из таблицы cms_page_part ниже. Я точно знаю, что должно быть два ряда. Один, где "имя" равно «тело» и другой, который существует, является «тестовым»; однако мой запрос ниже печатает только первый. Это потому, что я получаю результаты неправильно?
<div class="feature-text">
<?php
$qpp = mysql_query("SELECT * FROM cms_page_part WHERE page_id=$id");
$rpp = $qpp->fetch(PDO::FETCH_BOTH);
foreach ($rpp as $row) {
?>
<div id="col1">
<p><?php echo $row['name']=='body' ? $row['content_html'] : NULL; ?></p>
</div>
<div id="col2">
<p class="testimonial"><?php echo $row['name']=='sidebar' ? $row['content_html'] : NULL; ?></p>
</div>
<?php
}
?>
</div>
Решение
С fetch
вы только выборка одного ряда; Это означает, что вам нужно несколько раз вызвать fetch, чтобы получить все строки.
Если вы хотите, чтобы все строки были выполнены одним вызовом, вы должны использовать fetchAll код>
.
Не связан с StackOverflow