я работаю над проектом, в котором я отображаю некоторые изображения, загруженные пользователем, и они извлекаются из таблицы БД методом fetch_object()
, это мой код:
<?php
$ph1 = $media->fetch_assoc();
echo "testarray";
print_r($ph1);
while ($photo = $media->fetch_object()) { ?>
<li>
<div class="gallery-item">
<a href="<?= $system->getDomain() ?>/uploads/<?= $photo->path ?>" data-fancybox="gallery">
<img src="<?= $system->getDomain() ?>/uploads/<?= $photo->path ?>" alt="User Uploaded Photos" />
</a>
</div>
</li>
<?php } ?>
здесь $media
- мой результат объект из запроса.
проблема с моим кодом состоит в том, что, в то время как l oop начинает итерацию со второй строки и пропускает первую. Итак, моя галерея изображений показывает все изображения, кроме последнего загруженного изображения на сервер. Я также проверяю, что в то время как l oop пропускает 1-е, потому что переменная $photo
получает все записи, кроме 1-го (или самого последнего), я также проверяю, что и fetch_assoc()
, и fetch_object()
дают одинаковый результат, т.е. одну строку меньше, и когда я проверяю количество строк, возвращаемых из запроса, с помощью $media->num-rows
, возвращается точное количество строк, загруженных пользователем. Я просто не могу найти, почему я не получаю первые строки ??