X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Постраничная навигация на php
lails
lails
Topic Starter сообщение 9.1.2012, 11:21; Ответить: lails
Сообщение #1


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

[PHP]
mysql_connect("localhost","medk619","medk619");
mysql_select_db("medk619");

$num = 2;
$resultct = mysql_query("SELECT COUNT(*) FROM Menu_knigi_CK");
$co = mysql_fetch_array($resultct);
$post = $co[0];
$page = $_GET['page'];
$total = (($post - 1) / $num) +1;
$total = intval($total);
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;


$result = mysql_query("SELECT * from Menu_knigi_CK ORDER BY id LIMIT $start, $num");
do{
printf("<div id='div'> %s </div>",$row['img']);
}
while($row = mysql_fetch_array($result));

// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = '<a href=index.php?&page=1>Первая</a> <a href=index.php?&page='. ($page - 1) .'>Предыдущая</a> ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' <a href=index.php?&page='. ($page + 1) .'>Следующая</a> <a href=index.php?&page=' .$total. '>Последняя</a>';

// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 5 > 0)$page5left = ' <a href=index.php?&page='. ($page - 5) .'>'. ($page - 5) .'</a> ';
if($page - 4 > 0)$page4left = ' <a href=index.php?&page='. ($page - 4) .'>'. ($page - 4) .'</a> ';
if($page - 3 > 0)$page3left = ' <a href=index.php?&page='. ($page - 3) .'>'. ($page - 3) .'</a> ';
if($page - 2 > 0)$page2left = ' <a href=index.php?&page='. ($page - 2) .'>'. ($page - 2) .'</a> ';
if($page - 1 > 0) $page1left = '<a href=index.php?&page='. ($page - 1) .'>'. ($page - 1) .'</a> ';

if($page+5<=$total)$page5right=' <a href=index.php?&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
if($page+4<=$total)$page4right=' <a href=index.php?&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
if($page+3<=$total)$page3right=' <a href=index.php?&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
if($page+2<=$total)$page2right=' <a href=index.php?&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page+1<=$total)$page1right=' <a href=index.php?&page='. ($page + 1) .'>'. ($page + 1) .'</a>';

// Вывод меню если страниц больше одной

if ($total > 1)
{
Error_Reporting(E_ALL & ~E_NOTICE);
echo "<div class=\"pstrnav\">";
echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
echo "</div>";
}[/PHP]
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Электроник
Электроник
сообщение 9.1.2012, 13:37; Ответить: Электроник
Сообщение #2


1. что вы выводите в самом диве? покажите то что у вас в базе вместо $row['img']
2. вырежьте, на время, скрипт который вы показали (вставьте его в другой файл) а вместо него вставьте
<div id='div'>а сюда вставьте, то что должно быть, вместо $row['img']</div>
если после этого всё также, значит проблема не в скрипте
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
lails
lails
Topic Starter сообщение 9.1.2012, 13:46; Ответить: lails
Сообщение #3


(Электроник @ 9.1.2012, 16:37) *
значит проблема не в скрипте


я Тоже думаю что проблема не в коде, потому что это не превый код с постраничной навигацией, которые выдал такой портак. Однако, мне удалось решить проблему вместо вывода через ду вайл я сделал так:

[PHP]
if($page > $total) $page = $total;
$start = $page * $num - $num;

/*Изменения внесены тут*/
$result = mysql_query("SELECT * from Menu_knigi_CK ORDER BY id LIMIT $start, $num");
$row = mysql_fetch_array($result);

printf("<div id='div'> %s %s %s %s</div>",$row['img'], $row['Name'], $row['Avtor'], $row['Opisanie']);

/*Внесённые изменения заканчиваются тут*/


// Проверяем нужны ли стрелки назад

[/PHP]

Всё выводиться нормально, к сожалению пока не удалось понять почему цикл не работает .. =(
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Электроник
Электроник
сообщение 9.1.2012, 13:58; Ответить: Электроник
Сообщение #4


(lails @ 9.1.2012, 16:46) *
не удалось понять почему цикл не работает

тю :) яж совсем забыл, потому что это навигация переделанная поповичем, а его while это уже история :)
попробуйте вместо этого:
[PHP]do{
printf("<div id='div'> %s </div>",$row['img']);
}
while($row = mysql_fetch_array($result));[/PHP]
так:
[PHP]while($row = mysql_fetch_array($result)); {
printf("<div id='div'> %s </div>",$row['img']);
}[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Электроник
Электроник
сообщение 24.2.2012, 18:57; Ответить: Электроник
Сообщение #5


(lails @ 9.1.2012, 14:21) *
$num = 2;

если $num = 1; (то есть если информация выводиться в единичном экземпляре)
, то (в данном скрипте) нужно также в цикле выводить, или можно и без цикла?
(пробовал без цикла - работает, но как правильно, моих знаний не хватает)

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) СОЗДАНИЕ : / САЙтЫ / ЛЕНДЫ / БОТЫ ТГ / ВАЙТЫ / КРЕО / СОФТЫ / ДИЗАЙН [PHP, JS, HTML/CSS] и другое
5 CULA 3425 19.12.2023, 18:55
автор: CULA
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1246 24.11.2023, 14:46
автор: alexey
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
56 qpPeW 44945 19.7.2023, 10:03
автор: qpPeW
Открытая тема (нет новых ответов) Есть спецы по php/laravel?
3 Mixatraider 1894 26.5.2023, 20:48
автор: Mixatraider
Открытая тема (нет новых ответов) Опытный PHP\Python разработчик в поиске интересных задач
6 daikzlex 3409 25.5.2023, 13:55
автор: daikzlex


 



RSS Текстовая версия Сейчас: 25.4.2024, 17:38
Дизайн