Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: статья "Постраничная навигация"

Сообщения:  [1-4] 

 
 автор: Artem S.   (28.09.2005 в 17:07)   письмо автору
 
   для: P@Sol   (28.09.2005 в 15:58)
 

Перечитывая статью еще раз, нашел пару замечаний.
Так сказать вторая редакция ))

>> 1а. почему общее кол-во сообщений находим по этой формуле?
Это выбор автора :)
>> 2. почему нет проверки на кол-во постов?
>> (наверно если выводить из бд, этой проблемы нет)
Там разобран пример, как раз рассчитанный на базу данных.
И это не главное. Я представил "скелет", и каждый сам решает, что туда следует добавить, а что убрать.
Нет предела совершенству :)

А теперь о том, что стоит поменять.
1. Кавычки, если можно из обратных в двойные переделать. А то при копировании могу быть глюки.
2. Строчку
while ( $postrow[] = mysql_fetch_array($result))
Заменить на
<?
while ( $row mysql_fetch_array($result))
{
 
$postrow[] = $row;
}
?>

Так как последний элемент массива всегда будит пустым.
(
1.$postrow[] создали еще один элемент
2. Туда записалось false от от функции mysql_fetch_array
3. цикл завершился
)
3. В html коде заменить << и >> на их эквиваленты.

   
 
 автор: P@Sol   (28.09.2005 в 15:58)   письмо автору
 
   для: Loki   (28.09.2005 в 15:50)
 

0 :)

   
 
 автор: Loki   (28.09.2005 в 15:50)   письмо автору
 
   для: P@Sol   (28.09.2005 в 15:17)
 

>почему нельзя сразу ceil($posts / $num)?
думаю, это защита на тот случай, если количество сообщений равно нулю. Сколько страниц при этом выведет ваше выражение?:)

   
 
 автор: P@Sol   (28.09.2005 в 15:17)   письмо автору
 
 

делал постраничную навигацию по вашей статье и возникло два вопроса

1а. почему общее кол-во сообщений находим по этой формуле?
<?
$total 
intval(($posts 1) / $num) + 1

в частносте, почему $posts - 1?

1б. тестим
$posts=40;
$posts2=41;
$num=20;
$total = intval((40-1)/20) + 1 = 2,95 // получаем 2?
$total2 = intval((41-1)/20) + 1 = 3 // получаем 3

почему нельзя сразу ceil($posts / $num)?

2. почему нет проверки на кол-во постов?
если постов 25, а выводим по 20, то на второй странице выведет вместо 5 20 сообщений!
(наверно если выводить из бд, этой проблемы нет)

   

Сообщения:  [1-4] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования