Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.03.2006, 16:43
Skudarnov вне форума Посмотреть профиль Отправить личное сообщение для Skudarnov Посетить домашнюю страницу Skudarnov Найти все сообщения от Skudarnov
  № 1  
Ответить с цитированием
Skudarnov

Регистрация: Jul 2003
Адрес: Крым Керчь
Сообщений: 113
Отправить сообщение для Skudarnov с помощью ICQ
По умолчанию Помогите с LIMIT-ом

Вот код
$total = mysql_num_rows($result2);
//Разбиваем по 12 элементов на страницу
$page=$_GET['cur_page'];
$p = $total-(12*$page);
//$p=sqrt($p*$p);
if($p<=12){
$p=0;
}
$query ="SELECT * FROM video LIMIT $p, 12";

Все работает пока остаток элементов в БД БОЛЬШЕ чем элементов на страницу.. в моем случае 12. а как только меньше не выдает ничего.
Сейчас у меня 26 фильмов в бд, две страницы по 12 и еще на одной 2... 2 по 12 выводятся на "УРА" а вот остаток - никак....
Я уже IF написал... чтобы с самого начала выбирал 12 эл-тов. В чем затык?
__________________
ICQ 121409065 (Leader)
http://www.skudarnov.com

Старый 15.03.2006, 16:55
Ostgur вне форума Посмотреть профиль Отправить личное сообщение для Ostgur Посетить домашнюю страницу Ostgur Найти все сообщения от Ostgur
  № 2  
Ответить с цитированием
Ostgur
 
Аватар для Ostgur

Регистрация: Apr 2004
Адрес: macromedia—adobe Любит: Flash MX
Сообщений: 2,860
Тут надо не IF, а For юзать!

Старый 15.03.2006, 17:32
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 3  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Цитата:
Сообщение от Ostgur
Тут надо не IF, а For юзать!
Ага, а еще лучше - диагональное программирование (с)

Еще бы порядок сортировки прикрутить к запросу, для полного счастья.

А вообще, выбирать надо бы

$p = $curr_page * $per_page - 1;
... LIMIT $p, 12
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 15.03.2006, 17:39
Constantine вне форума Посмотреть профиль Отправить личное сообщение для Constantine Посетить домашнюю страницу Constantine Найти все сообщения от Constantine
  № 4  
Ответить с цитированием
Constantine
 
Аватар для Constantine

Регистрация: Jun 2000
Адрес: $_SERVER['REMOTE_ADDR']
Сообщений: 854
Кстати, количество страниц=ceil($total/12), короче только недавно подобное писал:
Код:
$startfrom=(!isset($_GET['from'])) ? 0 : intval($_GET['from']);
$query="SELECT COUNT(*) FROM ".DB_PREFIX."clients";
$result=mysql_query($query) or die("<h1>Invalid query: ".mysql_error()."</h1>");
if ($row=mysql_fetch_row($result)) $totalclients=$row[0];
$query="SELECT id, clientid, name FROM ".DB_PREFIX."clients ORDER BY clientid LIMIT $startfrom, 20";
$result=mysql_query($query) or die("<h1>Invalid query: ".mysql_error()."</h1>");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
// вывод чего-то
}
echo "<p>Страницы: | ";
$pages=ceil($totalclients/20);
$currentpage=$startfrom/20+1;
for($i=1;$i<=$pages;$i++) {
  $from=($i-1)*20;
  echo($currentpage==$i) ? "<b>$i</b> | " : "<a href=\"".$_SERVER['PHP_SELF']."?from=$from\">$i</a> | ";
}
__________________
X


Последний раз редактировалось Constantine; 15.03.2006 в 17:47.
Старый 15.03.2006, 18:11
Skudarnov вне форума Посмотреть профиль Отправить личное сообщение для Skudarnov Посетить домашнюю страницу Skudarnov Найти все сообщения от Skudarnov
  № 5  
Ответить с цитированием
Skudarnov

Регистрация: Jul 2003
Адрес: Крым Керчь
Сообщений: 113
Отправить сообщение для Skudarnov с помощью ICQ
Уже сделал.... просто то что вы мне писали берет с начала, а мне с конца надо, так во флеше все это дело.... и там все инверсится при парсинге.
Лщроче в IF я добавил так
if(p<$kol){
$kol=$p+12;
$p=0;
}

Т.е. если у меня колич в выборке, меньше чем элементов на страницу... все равно принудительно начинать с позиции 0 и выбирать кол-во элементов p+12.... работает....
__________________
ICQ 121409065 (Leader)
http://www.skudarnov.com

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:31.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 16:31.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.