|
|
|
| Знаю что неоднократно были тута такие темы возникла такой нюанс взял тута код постранички у вас вмонтировал к себе всё бы хорошо тока вот такая беда сперва всё номана выводит 1 страница как дожно а вот при нажатии на следующие 2 и тд невыводит нифига что можно зряче увидеть тут если я что то нетак сказал или непонятно http://www.autolegra.ru/catalog/brief2.php?brand_b=TOYT. Заранее спасибо.
//======================================================
$num = 2;
$page = $_GET['page'];
$result = mysql_query("SELECT COUNT(*) FROM catalog WHERE brand='$brand_b'");
$posts = mysql_result($result,0);
$total = intval(($posts - 1) / $num) + 1;
$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 catalog WHERE brand='$brand_b' LIMIT $start, $num");
while ( $postrow[] = mysql_fetch_array($result))
//======================================================
if ($page != 1) $pervpage = '<a href= ./brief2.php?brand='.$brand_b.'&page=1><<</a>
<a href= ./brief2.php?brand='.$brand_b.'&page='. ($page - 1) .'><</a> ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' <a href= ./brief2.php?brand='.$brand_b.'&page='. ($page + 1) .'>></a>
<a href= ./brief2.php?brand='.$brand_b.'&page=' .$total. '>>></a>';
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0) $page2left = ' <a href= ./brief2.php?brand='.$brand_b.'&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href= ./brief2.php?brand='.$brand_b.'&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href= ./brief2.php?brand='.$brand_b.'&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href= ./brief2.php?brand='.$brand_b.'&page='. ($page + 1) .'>'. ($page + 1) .'</a>';
// Вывод меню
echo $pervpage.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$nextpage;
//======================================================
echo "
<br>
<br>
<TABLE width=\"100%\" border=1 cellPadding=0 cellSpacing=0>
<TBODY>
<TR>
<TD>№ лота</TD>
<TD>Выпуск</TD>
<TD>Модель</TD>
<TD>Дата аукциона</TD>
<TD>Повреждения</TD>
<TD>Одометр</TD>
</TR>
";
for($i = 0; $i < $num; $i++)
{
echo "
<tr>
<TD><a href=\"full.php?id=".$postrow[$i]['id']."\">".$postrow[$i]['number_lot']." </a></TD>
<td>".$postrow[$i]['year_release']." </td>
<td>".$postrow[$i]['model']." </td>
<td>".$postrow[$i]['liveAuction']." </td>
<td>".$postrow[$i]['damage']." </td>
<td>".$postrow[$i]['odometr']." </td>
</tr>";
}
echo "</TBODY></table><br><br>";
//======================================================
|
| |
|
|
|
|
|
|
|
для: SaTa
(11.09.2005 в 22:37)
| | Следует исправить строки
<?php
$posts = mysql_result($result,0);
$total = intval(($posts - 1) / $num) + 1;
?>
|
на
<?php
$total = mysql_result($result,0);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(12.09.2005 в 00:50)
| | Тот же эффект только при нажатии на страницу теперь отображается 0 вместо 1, а так всё по старому отображения информации нет | |
|
|
|
|
|
|
|
для: sata
(12.09.2005 в 02:30)
| | Что неужто никто незнает ? просто оч надо. | |
|
|
|
|
|
|
|
для: sata
(12.09.2005 в 13:12)
| | Тогда прикрепите дамп таблицы к сообщению, чтобы мы могли потестировать скрипт на локальной машине и локализовать ошибку. | |
|
|
|
|
|
|
|
для: cheops
(12.09.2005 в 13:51)
| | Собственно сам скрипт страницы и дамп | |
|
|
|
|
|
|
|
для: sata
(12.09.2005 в 14:46)
| | Откуда берётся переменная $brand_b? | |
|
|
|
|
|
|
|
для: cheops
(13.09.2005 в 01:08)
| | Это марка машины она передаётся из начала каталога, можно временно отключить я потом добавлю обратно | |
|
|
|
|
|
|
|
для: sata
(13.09.2005 в 08:51)
| | Я так и не понял в чём смысл поиска - в SQL-запросах поиск осуществляется только по $brand_b, поставил строку
<?php
$brand_b = 'FORD';
?>
|
и у меня постраничная навигация заработала без всякого поиска (причём коректно). Скорее всего у вас при первом обращении не инициируется переменная $brand_b, без которой ничего не работает.
У вас имеется форма
<form action="">
<input type="text" name="mod">
<input type="submit" name="go">
</form>
|
При вводе в которую в адресную строку помещаются параметры mod и go при переходе по ссылкам постраничной навигации они теряются и, следовательно, не влияют на результаты запроса. | |
|
|
|
|
|
|
|
для: cheops
(13.09.2005 в 13:24)
| | Признаю моя вина плохо обьяснил да и в скрипт я не внёс изменения форма эта нужна вот для этого
if(empty($mod))
{
$result = mysql_query("SELECT COUNT(*) FROM catalog WHERE brand='$brand_b'");
}
else
{
$result = mysql_query("SELECT COUNT(*) FROM catalog WHERE brand='$brand_b' or model='$mod'");
}
|
Немного поразмыслив над тем что вы написали я поудалял нах переменную $brand_b и обьявил её глобальной, как ни странно заработало.
Но возник вопрос именно с этой формой хотел доделать выборку по модели но фигня какая то получается попытался с запросами поиграть так либо неработает либо выводит но опять таки всю таблицу.
Неподскажите что нетак с конструкцией потому что дело в ней.
Прикрепил файл с нынешней конфигурацией скрипта | |
|
|
|
|
|
|
|
для: sata
(13.09.2005 в 18:58)
| | Вы когда из формы передаёте данные методом GET - они появляются в строке запроса - вы это можете наблюдать даже. Когда же вы переходите по ссылкам
<?php
if ($page != 1) $pervpage = '<a href= ./brief2.php?page=1><<</a>
<a href= ./brief2.php?page='. ($page - 1) .'><</a> ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' <a href= ./brief2.php?page='. ($page + 1) .'>></a>
<a href= ./brief2.php?page=' .$total. '>>></a>';
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0) $page2left = ' <a href= ./brief2.php?page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href= ./brief2.php?page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href= ./brief2.php?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href= ./brief2.php?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
?>
|
параметры mod и go, которые попали в адресную строку из формы - пропадают - вываливается всё содержимое таблицы, т.е. вместо
href= ./brief2.php?page='. ($page - 1) .'
|
нужно писать что-то в этом духе
href= ./brief2.php?page='. ($page - 1) .'&mod=$mod&go=$go
|
| |
|
|
|
|
|
|
|
для: cheops
(13.09.2005 в 19:27)
| | Дело в том что у меня невыходит здесь постраничку с этими параметрами (модель) вроде всё просто ан ботва всё какая то получается. | |
|
|
|
|
|
|
|
для: sata
(13.09.2005 в 21:42)
| | Усё тема закрылась чуствую | |
|
|
|