Есть постраничная навигация, которая правильно выводит товары, но почему то не работает сама навинация, показывает, что есть всего 1 страница, хотя настроила вывод товаров 2 из 3.
Так же выдает ошибку:
Warning: mysqli_query() expects at least 2 parameters, 1 given in W:\domains\plitka\plitka.php on line 79
Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, null given in W:\domains\plitka\plitka.php on line 80
в коде:
$result = mysqli_query("SELECT COUNT(*) FROM `proizvoditel` $where ");
$posts = mysqli_fetch_row($result);
Сам код:
$link = mysqli_connect($db_host, $db_user, $db_password, $db_database)
or die("Ошибка " . mysqli_error($link));
if(!empty($cat))
{
$escaped_cat = mysqli_real_escape_string($link, $cat);
$where = "WHERE `brand` = '$escaped_cat'";
}
else
$where = '';
$num = 2;
// Извлекаем из URL текущую страницу
$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result = mysqli_query("SELECT COUNT(*) FROM `proizvoditel` $where ");
$posts = mysqli_fetch_row($result);
// Находим общее число страниц
$total = intval(($posts - 1) / $num) + 1;
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная к какого номера
// следует выводить сообщения
$start = $page * $num - $num;
$query = "SELECT * FROM `proizvoditel` $where LIMIT $start, $num ";
$query = "SELECT * FROM `proizvoditel` $where LIMIT $start, $num ";
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link));
if (mysqli_num_rows($result) > 0)
{
$row = mysqli_fetch_array($result);
do
{
echo '
<div class="col-md-3">
<div class="finish">
<div class="finishimg"><a href="product.php"> <img src="'.$row["img"].'"/></a> </div>
<h3>'.$row["proizvoditel"].'</h3>
<p><a href="product.php">Смотреть</a></p>
</div>
</div>
';
}
while ($row = mysqli_fetch_array($result));
}
Код постраничной навигации:
// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = '<li><a href=plitka.php?page=1><<</a> </li>
<li><a href=plitka.php?page='. ($page - 1) .'><</a></li> ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' <li><a href=plitka.php?page='. ($page + 1) .'>></a></li>
<li><a href=plitka.php?page=' .$total. '>>></a></li>';
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0) $page2left = ' <li><a href=plitka.php?page='. ($page - 2) .'>'. ($page - 2) .'</a> </li>| ';
if($page - 1 > 0) $page1left = '<li><a href=plitka.php?page='. ($page - 1) .'>'. ($page - 1) .'</a></li> | ';
if($page + 2 <= $total) $page2right = ' | <li><a href=plitka.php?page='. ($page + 2) .'>'. ($page + 2) .'</a></li>';
if($page + 1 <= $total) $page1right = ' | <li><a href=plitka.php?page='. ($page + 1) .'>'. ($page + 1) .'</a></li>';
// Вывод меню
echo $pervpage.$page2left.$page1left.'<li><a>'.$page.'</a></li>'.$page1right.$page2right.$nextpage;
Перепробовала уже кучу вариантов и никак не смогла решить эту проблему, плюс не знаю, как переписать запросы под PHP 7.