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]   

> Описание: БД
func
Отправлено: 18 Мая, 2007 - 13:43:45
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Май 2007  


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




CODE (text):
скопировать код в буфер обмена
  1. [list]Приветствую всех форумчан!
  2. Помогите решить одну проблемку. Далее приведен код постраничного вывода из БД, нужно чтобы количество выводимых линков  
  3.  
  4. ограничивалось десятью позициями на страницу и получался такой запрос:
  5.  
  6.                                      
  7.                                             "12345678910 >>> следующие 10"  
  8.  
  9.  
  10. Если у кого есть готовый код, я буду благодарен :)
  11.  
  12. [code]
  13. <?php
  14.  
  15. $f_query = "SELECT count(*) FROM test order by id";
  16. $tot = mysql_query($f_query) or die(mysql_error());
  17.  
  18. $total= mysql_result($tot,0) or die(mysql_error());
  19.  
  20. $per_page=5; // количество статей на странице
  21.  
  22. $total_pages = ceil($total/$per_page);//получаем количество страниц
  23.  
  24.  
  25. for ($i; $i<$total_pages; $i++)
  26. {
  27.  
  28. $page=$i*$per_page;
  29.  
  30.  
  31.   $query = "SELECT * FROM test
  32.             WHERE msg = 'test'
  33.             LIMIT $send, $per_page";
  34.  
  35.   $inp = mysql_query($query) or die(mysql_error());
  36.  
  37.  
  38. if ($page!=$send) echo "<a href='".$PHP_SELF."?send=".$page."'><font color='#ff0000'><b>   ".($i+1).
  39.     "</font></b></a>"; 
  40.  
  41.  
  42. else echo "<b>  ".($i+1)."</b>";
  43.  
  44. }
  45.  
  46. ?>
  47.  
  48.  
  49.  






 
 Top
RuSV
Отправлено: 23 Мая, 2007 - 17:26:43
Post Id



Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Май 2007  
Откуда: Черкассы


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




# заводишь некий идентификатор положения
if (empty($cr_pos)) { $cr_pos=0} # что бы отображало с начала.

# и колво элементов для отображения
$show_max= 10;

# пышем запрос
$q="SELECT * FROM TABLENAME LIMIT $cr_pos,$show_max";

# получаем данные запроса в нумерованный массив ( mysql_fetch_row ) если тебе ничего больше ничего не надо с ними делать, кроме отображения.
$res=mysql_fetch_row (mysql_query($q));

# считаем кол-во элементов массива
$max_elm=count($res);

# рисуешь данные на страницу согласно значения $position

for ($i=0; $i<=$show_max-1; i++) {
print ($res[$i]."<br>");
}
# потом рисуем 2 линка для скроллинга по данным

# скролл назад
if ($cr_pos > $show_max )
{
$cr_pos=$cr_pos-1
print("<a href=этотскрипт.php?cr_pos=$cr_pos><<< Назад</a> );
}
else
{
print("<font color=#dddddd><<< Назад</font> );
}

print (" | "); # это не жопа ;)

# скролл вперед

if ($cr_pos < $max_elm-10 )
{
print("<a href=этотскрипт.php?cr_pos=$cr_pos++>Вперед >>></a> );
}
else
{
print("<font color=#dddddd>Вперед >>></font> );
}

усё.. настрочил за 20 минут с перекуром.. должно работать, если че.. в асю Улыбка

ps как же достала клавиша Tab, пока форматил код %)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB