Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Пагинация

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
arxnday
Отправлено: 01 Декабря, 2015 - 20:54:28
Post Id


Новичок


Покинул форум
Сообщений всего: 41
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




В общем дело так обстоит. Посмотрев на статью на сайте попробовал добавить ее к себе.
Чистая копипаста с подставлением своей бд работает, результат такой:


Но, PhpStorm говорит о том, что mysql_ имеет статус deprecated, соответственно переписал все с mysqli_, и тут начались проблемы. Вместо ожидаемого результата вывод получается такой:


И сам код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. // Устанавливаем соединение с базой данных
  3. include "config2.php";
  4. // Переменная хранит число сообщений выводимых на станице
  5. $num = 5;
  6. // Извлекаем из URL текущую страницу
  7. $page = $_GET['page'];
  8. // Определяем общее число сообщений в базе данных
  9. $result = mysqli_query($db,"SELECT COUNT(*) FROM articles");
  10. $posts = mysqli_num_rows($result);
  11. // Находим общее число страниц
  12. $total = intval(($posts - 1) / $num) + 1;
  13. // Определяем начало сообщений для текущей страницы
  14. $page = intval($page);
  15. // Если значение $page меньше единицы или отрицательно
  16. // переходим на первую страницу
  17. // А если слишком большое, то переходим на последнюю
  18. if(empty($page) or $page < 0) $page = 1;
  19. if($page > $total) $page = $total;
  20. // Вычисляем начиная к какого номера
  21. // следует выводить сообщения
  22. $start = $page * $num - $num;
  23. // Выбираем $num сообщений начиная с номера $start
  24. $result = mysqli_query($db,"SELECT * FROM articles ORDER BY id DESC LIMIT $start, $num");
  25. // В цикле переносим результаты запроса в массив $postrow
  26. while ( $postrow[] = mysqli_fetch_array($result))
  27.     ?>
  28.  
  29.     <?PHP
  30. echo "<table>";
  31. for($i = 0; $i < $num; $i++)
  32. {
  33.     echo "<tr>
  34.         <td>".$postrow[$i]['title']."</td>
  35.         </tr>
  36.       <tr><td colspan=\"2\">".$postrow[$i]['full_text']."</td></tr>";
  37. }
  38. echo "</table>";
  39. ?>
  40. <?PHP
  41. // Проверяем нужны ли стрелки назад
  42. if ($page != 1) $pervpage = '<a href= ./index2.php?page=1><<</a>
  43.                               <a href= ./index2.php?page='. ($page - 1) .'><</a> ';
  44. // Проверяем нужны ли стрелки вперед
  45. if ($page != $total) $nextpage = ' <a href= ./index2.php?page='. ($page + 1) .'>></a>
  46.                                   <a href= ./index2.php?page=' .$total. '>>></a>';
  47.  
  48. // Находим две ближайшие станицы с обоих краев, если они есть
  49. if($page - 2 > 0) $page2left = ' <a href= ./index2.php?page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
  50. if($page - 1 > 0) $page1left = '<a href= ./index2.php?page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
  51. if($page + 2 <= $total) $page2right = ' | <a href= ./index2.php?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
  52. if($page + 1 <= $total) $page1right = ' | <a href= ./index2.php?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
  53.  
  54. // Вывод меню
  55. echo $pervpage.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$nextpage;
  56.  
  57. ?>


Где тут у меня ошибка то запряталась?
(Добавление)
Я так догадываюсь что проблема есть где-то вот тут:
Старый вариант:

Новый вариант:

Но не знаю как переписать по-другому
 
 Top
arxnday
Отправлено: 02 Декабря, 2015 - 07:27:27
Post Id


Новичок


Покинул форум
Сообщений всего: 41
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Все, решение нашлось тут https://www[dot]developphp[dot]com/video[dot][dot][dot]Results-Tutorial
Часть кода, которую упоминал как возможно ошибочную заменил, таковой она и оказалась в этом случае, точнее
Было:

Стало:
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB