Вопрос заключается в следующем: Имеем скрипт (ниже).
Зачем в этом случае записывать массив в переменную $array 2 раза, если можно просто запись произвести в цикле, и почему в этом случае выводится блок с пустым содержимым 7-м блоком?
$per_page = 6;
if (isset($_GET['page'])) $page=($_GET['page']-1); else $page=0;
$start=abs($page*$per_page);
$result = mysql_query("SELECT * FROM `news` ORDER BY id DESC LIMIT $start,$per_page");
$array = mysql_fetch_array($result);
do
{
echo ""."<a href='/newsfull.php/?single=$array[id]' class='news-block'><img class='news-img' src='statimg/$array[file]' alt=''><div class='news-content'><h4>". $array[zagolovok] . "</h4><p>" . $array[smallopisanie] . "</p><p style='text-align: right; display: block;'>" . $array[time] . " <i class='fa fa-calendar-o' aria-hidden='true'></i></p></div></a>"."";
}
while ($array = mysql_fetch_array($result));
Мои предположения относительно переработки скрипта, хочу узнать почему так не работает:
include 'bd.php';
$per_page = 6;
if (isset($_GET['page'])) $page=($_GET['page']-1); else $page=0;
$start=abs($page*$per_page);
$result = mysql_query("SELECT * FROM `news` ORDER BY id DESC LIMIT $start,$per_page");
do
{
echo ""."<a href='/newsfull.php/?single=$array[id]' class='news-block'><img class='news-img' src='statimg/$array[file]' alt=''><div class='news-content'><h4>". $array[zagolovok] . "</h4><p>" . $array[smallopisanie] . "</p><p style='text-align: right; display: block;'>" . $array[time] . " <i class='fa fa-calendar-o' aria-hidden='true'></i></p></div></a>"."";
}
while ($array = mysql_fetch_array($result));
Вся соль в этом куске кода
do
{
echo ""."<a href='/newsfull.php/?single=$array[id]' class='news-block'><img class='news-img' src='statimg/$array[file]' alt=''><div class='news-content'><h4>". $array[zagolovok] . "</h4><p>" . $array[smallopisanie] . "</p><p style='text-align: right; display: block;'>" . $array[time] . " <i class='fa fa-calendar-o' aria-hidden='true'></i></p></div></a>"."";
}
while ($array = mysql_fetch_array($result));
Сначала Вы выводите, а потом запрашиваете данные для вывода, в результате у Вас 1 блок пустой (без данных), для того что бы работало нормально
while ($array = mysql_fetch_array($result))
{
echo ""."<a href='/newsfull.php/?single=$array[id]' class='news-block'><img class='news-img' src='statimg/$array[file]' alt=''><div class='news-content'><h4>". $array[zagolovok] . "</h4><p>" . $array[smallopisanie] . "</p><p style='text-align: right; display: block;'>" . $array[time] . " <i class='fa fa-calendar-o' aria-hidden='true'></i></p></div></a>"."";
}
Рекомендую ознакомится с справкой
do {} while (); http://php.net/manual/ru/control-structures.do.while.php
и while() {} http://php.net/manual/ru/control-structures.while.php
Принцип похож но имеет различия во времени проверки условий выполнения циклов
Виртуальный выделенный сервер (VDS) становится отличным выбором
Доброго времени сутокДля обучения работы с selenium мне понадобилась форма регистрации, заносящая данные в БД
Добрый день есть такой кодПодскажите пожалуйста как сделать что бы у первого элемента из цикла был класс active
Посоветуйте бесплатный сервис, относительно небольшую библиотеку или способы реализации для склонения русских слов по падежам на сайтеРаньше,...