Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
32 / 32 / 24
Регистрация: 16.04.2015
Сообщений: 219

Ошибка в постраничной навигации

14.05.2015, 12:43. Показов 1036. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Помогите пожалуйста разобраться, прикручиваю к сайту постраничную навигацию, но что-то идет не так и выдает ошибки:

Warning: Missing argument 2 for articles(), called in Z:\home\white.loc\www\controller\control ler.php on line 31 and defined in Z:\home\white.loc\www\model\model.php on line 30

Warning: Missing argument 3 for articles(), called in Z:\home\white.loc\www\controller\control ler.php on line 31 and defined in Z:\home\white.loc\www\model\model.php on line 30
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Функция в файле model.php написана следующим образом:
PHP
1
2
3
4
5
6
7
8
9
10
function articles($articles, $start_pos, $perpage){
    $query = "SELECT new_id, title, anons, date, text, img FROM news ORDER BY new_id DESC LIMIT $start_pos, $perpage";
    $res = mysql_query($query) or die (mysql_error());
    
    $articless = array();
    while($row = mysql_fetch_assoc($res)){
        $articless[] = $row;
    }
    return $articless;
}
А вот так прописано в файле controller.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
case('articles'):
            // статьи выводимые на главной странице
            $articles = articles('articles');
            
            // параметры для навигации
            $perpage = PERPAGE; // количество статей на страницу
            if(isset($_GET['page'])){
                $page = (int)$_GET['page'];
                if($page < 1) $page = 1;
            }else{
                $page = 1;
            }
            $count_rows = count($articles);
            $pages_count = ceil($count_rows / $perpage);
            if(!$pages_count) $pages_count = 1;
            if($page > $pages_count) $page = $pages_count;
            $start_pos = ($page - 1) * $perpage;
            $endpos = $start_pos + $perpage;
            if($endpos > $count_rows) $endpos = $count_rows;
        break;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.05.2015, 12:43
Ответы с готовыми решениями:

Многоточие в постраничной навигации
Здравствуйте. Есть небольшой скрипт игровой статы. Количество инфы увеличилось, и страниц стало так много, что не помещается в 22&quot;...

Посздание постраничной навигации
Подскажите плиз ! Нужна постраничная навигация след вида : Есть например комментарии нужно выодить по 10 штук на страницу и по пять...

Меню постраничной навигации
Значит, есть меню постраничной навигации, которая выводит номера страниц по порядку. Код выглядит вот так: $total_number_of_pages =...

3
Заблокирован
14.05.2015, 18:36
Ну, допишите второй и третий параметры при вызове. Или укажите для них значения по умолчанию в объявлении функции.
0
127 / 127 / 25
Регистрация: 20.11.2009
Сообщений: 498
14.05.2015, 18:42
Цитата Сообщение от Kven-M Посмотреть сообщение
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Ошибка запроса, проверьте его в админе
0
32 / 32 / 24
Регистрация: 16.04.2015
Сообщений: 219
15.05.2015, 10:50  [ТС]
Спасибо, за помощь, я прописал два недостающих параметра, в принципе это почти решило проблему, но на сайте постраничная навигация так и не выводится, всего в базе у меня три статьи (новости) на главную страницу выводится их две (как задано в $perpage = PERPAGE; где PERPAGE = 2), под этими статьями должна и находится постраничная навигация, но ее нет. Прописывая параметр с номером страницы в адресную строку браузера, ничего не происходит, так и остаюсь на главной странице. Файл controller.php выглядит теперь так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
case('articles'):          
            // параметры для навигации
            $perpage = PERPAGE; // количество статей на страницу
            if(isset($_GET['page'])){
                $page = (int)$_GET['page'];
                if($page < 1) $page = 1;
            }else{
                $page = 1;
            }
            $count_rows = count($articles); // общее количество Статей //функция прописана в файле model.php
            $pages_count = ceil($count_rows / $perpage); // Кол-во страниц - деление количества Статей на количество выводимых на страницу
            if(!$pages_count) $pages_count = 1; // минимум одна страница
            if($page > $pages_count) $page = $pages_count; // если запрошенная страница больше максимума
            $start_pos = ($page - 1) * $perpage; // начальная позиция для запроса (например LIMIT 0, 3)
            $endpos = $start_pos + $perpage; // до какой Статьи будет вывод на страницу
            if($endpos > $count_rows) $endpos = $count_rows;
            
            // статьи выводимые на главной странице
            $articles = articles($articles, $start_pos, $perpage);
        break;
Добавлено через 13 часов 25 минут
Все вопрос снят, разобрался.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.05.2015, 10:50
Помогаю со студенческими работами здесь

Скрипт постраничной навигации
Здрасте всем!! Полазил по форуму и в поиске, нашел кучу всяких тем, но не одна не помогла, поэтому хочу попросить вас о помощи. Я новичок...

Вопрос с постраничной навигации
Здравствуйте, Помогите разобраться с постраничной навигации,написал код,проблема в следующем,я вывожу товары на страницу по 5 штук,а мой...

Скрипт постраничной навигации
Проблемка такая-задался мыслью переделать свой сайт...в том числе и навигацию постраничную...так как она была написана не мной и случайно...

Косяк постраничной навигации в поиске
При поиске формируется вот такая ссылка ...

Активный элемент постраничной навигации
Здравствуйте, есть скрипт вывод постов постранично, как присвоить активной странице другой цвет? &lt;?php $limit = 2; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru