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

Форум MySQL

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

 

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

вид форума:
Линейный форум Структурный форум

тема: постраничнаю навигация
 
 автор: antosha23   (21.10.2009 в 17:22)   письмо автору
 
 

скажи как сделать мне постраничную навигацию на странице где выводятся только новости

  Ответить  
 
 автор: cheops   (22.10.2009 в 12:02)   письмо автору
 
   для: antosha23   (21.10.2009 в 17:22)
 

Возможно вас заинтресуют следующие ссылки
http://www.softtime.ru/info/articlephp.php?id_article=33
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=3555
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=3044

  Ответить  
 
 автор: antosha2023   (23.10.2009 в 12:37)   письмо автору
 
   для: cheops   (22.10.2009 в 12:02)
 

спасибо но скажите как сделать чтобы было так , чтобы выводил допустим 10 последних добавлений

заранее благодорю

  Ответить  
 
 автор: Trianon   (23.10.2009 в 13:35)   письмо автору
 
   для: antosha2023   (23.10.2009 в 12:37)
 

а в чем тут постраничность?

  Ответить  
 
 автор: antosha2023   (23.10.2009 в 17:35)   письмо автору
 
   для: Trianon   (23.10.2009 в 13:35)
 

скажите лучше ото возможно или нет

  Ответить  
 
 автор: Trianon   (23.10.2009 в 19:24)   письмо автору
 
   для: antosha2023   (23.10.2009 в 17:35)
 

>скажите лучше ото возможно или нет

отож

  Ответить  
 
 автор: antosha2023   (23.10.2009 в 17:36)   письмо автору
 
   для: Trianon   (23.10.2009 в 13:35)
 

где тут

  Ответить  
 
 автор: Trianon   (23.10.2009 в 19:22)   письмо автору
 
   для: antosha2023   (23.10.2009 в 17:36)
 

>>>спасибо но скажите как сделать чтобы было так , чтобы выводил допустим 10 последних добавлений
>>а в чем тут постраничность?
>где тут
тут - это в реплике, на которую дан ответ.

О какой постраничности идет речь при "выводе 10 последних добавлений"?

  Ответить  
 
 автор: antosha2023   (23.10.2009 в 19:32)   письмо автору
 
   для: Trianon   (23.10.2009 в 19:22)
 

которая внизу , хочу сделать также почти как на philka.ru

  Ответить  
 
 автор: Slo_Nik   (25.10.2009 в 20:12)   письмо автору
 
   для: antosha2023   (23.10.2009 в 19:32)
 

ну так сортируй новости по дате при выборе из базы

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 20:17)   письмо автору
 
   для: Slo_Nik   (25.10.2009 в 20:12)
 

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

<?
$result77 = mysql_query("SELECT str FROM options", $db);
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];
// Извлекаем из URL текущую страницу
@$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result00 = mysql_query("SELECT COUNT(*) FROM data ");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
// Находим общее число страниц
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная с какого номера
// следует выводить сообщения
$start = $page * $num - $num;
// Выбираем $num сообщений начиная с номера $start

$result = mysql_query("SELECT id,title,description,date,author,mini_img,view FROM data WHERE date> '$date_begin' AND date <'$date_end' ORDER BY id LIMIT $start, $num",$db);

if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору antosha2027@gmail.com. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)

{
$myrow = mysql_fetch_array($result);

do
{
$date = $myrow["date"];
list($year, $month, $day) = explode("-", $date); // Или сразу, за место $date, поставить $myrow["date"]
$date = "$day.$month.".substr($year, 2, 2); // Дата в новом формате

printf ("<br><table class='lessons'>
<tr>
<td><p class='post_name'><div><img class='mini' align='left' src='%s'></div><a href='lessons.php?id=%s'>%s</a></p>
<div class='lasens_adds'>Автор урока: %s</div>
<div claass='info' >
<p class='lasens_ads'>Дата добавления:$date</p>
%s <p class='lasens_adds'>Просмотров: %s </p></div></td>
</tr>
<tr>
<div class='line'></div>
</tr>
</table><br><br>",$myrow["mini_img"],$myrow["id"],$myrow["title"], $myrow["author"],$myrow["description"], $myrow["view"]);

}
while ($myrow = mysql_fetch_array($result));
if ($page != 1) $pervpage = '<a href=view_date.php?&page=1>Первая</a> | <a href=view_date.php?&page='. ($page - 1) .'>Предыдущая</a> | ';

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

// Стр. с обоих краев
if($page - 2 > 0) $page2left = ' <a href=view_date?&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href=view_date?&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href=view_date?&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=view_date&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>";
}



}

else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}


?>


заранее спасибо

  Ответить  
 
 автор: Trianon   (26.10.2009 в 20:26)   письмо автору
 
   для: antosha2023   (26.10.2009 в 20:17)
 

Как называется файл, код из которого Вы привели?

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 20:36)   письмо автору
 
   для: Trianon   (26.10.2009 в 20:26)
 

view_date.php

  Ответить  
 
 автор: Trianon   (26.10.2009 в 20:48)   письмо автору
 
   для: antosha2023   (26.10.2009 в 20:36)
 

тогда всё по иде должно работать.
Единственное что странно - почему view_date.php?&page= а не _date.php?page=
Но это по идее не должно особо влиять...

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 20:54)   письмо автору
 
   для: Trianon   (26.10.2009 в 20:48)
 

требует страницу 2 и так далее

  Ответить  
 
 автор: Trianon   (26.10.2009 в 20:57)   письмо автору
 
   для: antosha2023   (26.10.2009 в 20:54)
 

кто и что у Вас что-то требует? Может яснее изложите?
Сптриница HTML, какая бы она ни была, сама по себе ничего требовать не может.

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 21:04)   письмо автору
 
   для: Trianon   (26.10.2009 в 20:57)
 

короче он пишет уменя вот это
Not Found
The requested URL /phpsite/view_date&page=2 was not found on this server.

Подсказка Денвера

Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/localhost/www/phpsite/view_date&page=2, которого не существует.

В случае использования CGI-скриптов, корректные пути к CGI-директориям следующие:
URL Куда указывает
http://***/cgi-glob/script.cgi /home/cgi-glob/script.cgi
http://***/cgi/script.cgi /home/***/cgi/script.cgi
http://***/cgi-bin/script.cgi /home/***/cgi-bin/script.cgi

и не знаю что сделать

  Ответить  
 
 автор: Лена   (26.10.2009 в 21:14)   письмо автору
 
   для: antosha2023   (26.10.2009 в 21:04)
 

У Вас файл как называется?
view_date.php

А что у Вас?
if($page - 2 > 0) $page2left = ' <a href=view_date?&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href=view_date?&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href=view_date?&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=view_date&page='. ($page + 1) .'>'. ($page + 1) .'</a>';

Обратите внимание на последнюю ссылку. Там еще одна ошибка.
Вот Денвер Вам и пишет, что в упор не видит того, что Вы написали.

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 21:21)   письмо автору
 
   для: Лена   (26.10.2009 в 21:14)
 

fа терь пишет
Not Found
The requested URL /phpsite/view_date was not found on this server.

Подсказка Денвера

Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/localhost/www/phpsite/view_date, которого не существует.

В случае использования CGI-скриптов, корректные пути к CGI-директориям следующие:
URL Куда указывает
http://***/cgi-glob/script.cgi /home/cgi-glob/script.cgi
http://***/cgi/script.cgi /home/***/cgi/script.cgi
http://***/cgi-bin/script.cgi /home/***/cgi-bin/script.cgi и

Вы обратились к файлу без необходимых параметров. Проверте адресную строку браузера.

  Ответить  
 
 автор: Trianon   (26.10.2009 в 21:22)   письмо автору
 
   для: antosha2023   (26.10.2009 в 21:04)
 

Вы не тот символ из ссылки удалили.
Вопросительный знак должен был остаться.
Амперсанд сразу после него нужно было убрать.

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 21:24)   письмо автору
 
   для: Trianon   (26.10.2009 в 21:22)
 

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

  Ответить  
 
 автор: Trianon   (26.10.2009 в 21:26)   письмо автору
 
   для: antosha2023   (26.10.2009 в 21:24)
 

>я не что не уалял я просто поставил знак ? или его надо вооще обрать

Вы пьяны?

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 23:55)   письмо автору
 
   для: Trianon   (26.10.2009 в 21:26)
 

нет я непью вооще

что страно на других файлай все ок , а вот где сортировка по дате проблемы

  Ответить  
 
 автор: antosha2023   (26.10.2009 в 13:26)   письмо автору
 
   для: antosha2023   (23.10.2009 в 19:32)
 

ну так сортируй новости по дате при выборе из базы

Ответить

автор: antosha2023 (26.10.2009 в 20:17) письмо автору

для: Slo_Nik (25.10.2009 в 20:12)


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

<?
$result77 = mysql_query("SELECT str FROM options", $db);
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];
// Извлекаем из URL текущую страницу
@$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result00 = mysql_query("SELECT COUNT(*) FROM data ");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
// Находим общее число страниц
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная с какого номера
// следует выводить сообщения
$start = $page * $num - $num;
// Выбираем $num сообщений начиная с номера $start

$result = mysql_query("SELECT id,title,description,date,author,mini_img,view FROM data WHERE date> '$date_begin' AND date <'$date_end' ORDER BY id LIMIT $start, $num",$db);

if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору antosha2027@gmail.com. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)

{
$myrow = mysql_fetch_array($result);

do
{
$date = $myrow["date"];
list($year, $month, $day) = explode("-", $date); // Или сразу, за место $date, поставить $myrow["date"]
$date = "$day.$month.".substr($year, 2, 2); // Дата в новом формате

printf ("<br><table class='lessons'>
<tr>
<td><p class='post_name'><div><img class='mini' align='left' src='%s'></div><a href='lessons.php?id=%s'>%s</a></p>
<div class='lasens_adds'>Автор урока: %s</div>
<div claass='info' >
<p class='lasens_ads'>Дата добавления:$date</p>
%s <p class='lasens_adds'>Просмотров: %s </p></div></td>
</tr>
<tr>
<div class='line'></div>
</tr>
</table><br><br>",$myrow["mini_img"],$myrow["id"],$myrow["title"], $myrow["author"],$myrow["description"], $myrow["view"]);

}
while ($myrow = mysql_fetch_array($result));
if ($page != 1) $pervpage = '<a href=view_date.php?&page=1>Первая</a> | <a href=view_date.php?&page='. ($page - 1) .'>Предыдущая</a> | ';

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

// Стр. с обоих краев
if($page - 2 > 0) $page2left = ' <a href=view_date?&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href=view_date?&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href=view_date?&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=view_date&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>";
}



}

else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}


?>


заранее спасибо

  Ответить  
Rambler's Top100
вверх

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