|
|
|
| Здравствуйте.
Воспользовавшись поиском увидел, что тема постраничной навигации поднималась не раз, но тот вопрос который хочу задать не был затронут. В книге "ПХП 5 на примерах" в главе 17 листинге 17.20 был приведен пример постраничной навигации. Я решил им воспользоваться, но столкнулся с ошибкой. При переходе по ссылке "Следующие" выдает ошибку:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in H:\home\rubiport.com\www\index.php on line 14
|
Вот сам код:
<?
include ("inc/header.php");
$pnumber=10;
include ("config/cnf_c.php");
if(empty($_GET['start'])) $start=0;
else $start = $GET['start'];
$cnt = mysql_query("SELECT COUNT(*) FROM news");
if(!$cnt) exit("Ошибка");
$count = mysql_result($cnt, 0);
$res = mysql_query("SELECT * FROM news LIMIT $start, $pnumber");
for($i=0; $i<mysql_num_rows($res); $i++)
{
$order = mysql_fetch_array($res);
$theme = $order['theme'];
$shortnews = $order['short'];
$time = $order['puttime'];
echo "<center>$theme<br> $time<br> $shortnews<br></center>";
}
if ($start !=0) {
echo "<center><a href=http://".$_SERVER["SERVER_NAME"].$_SERVER['PHP_SELF']."?start=".($start - $pnumber).">Предыдущие</a><center>";
}
if ($count > $start + $pnumber) {
echo "<center><a href=http://".$_SERVER["SERVER_NAME"].$_SERVER['PHP_SELF']."?start=".($start + $pnumber).">Cледующие</a></center>";
}
include ("inc/footer.php");
?>
|
Буду благодарен если вы объясните в чем ошибка... Заранее спасибо. | |
|
|
|
|
|
|
|
для: solarpage
(26.03.2009 в 14:07)
| | Что-то мне не верится, что в примерах книги такой грязный код... без единого отступа, с уязвимостью SQL-инъекции... | |
|
|
|
|
|
|
|
для: Trianon
(26.03.2009 в 14:45)
| | Вот код из книги
<?php
//Число записей на одной странице
$pnumber=25;
//Устанавливаем соединение с базой
include 'config.php';
//Проверяем значение параметра start
if(empty($_GET['start'])) $start=0;
else $start = $GET['start'];
//Выясняем число новостей в таблице tbl
$cnt = mysql_query("SELECT COUNT(*) FROM tbl");
if(!$cnt) exit("Ошибка в синтаксисе - ".mysql_error()."<br>");
//Поместим число записей в переменную $count
$count = mysql_result($cnt, 0);
//выбираем записи из таблицы tbl
$res = mysql_query("SELECT * FROM news LIMIT $start, $pnumber");
for($i=0; $i<mysql_num_rows($res); $i++)
{
$order = mysql_fetch_array($res);
echo $order['name']."<br>";
}
//выводим ссылки на предыдущие записи
if ($start !=0)
{
echo "<a href=http://".$_SERVER["SERVER_NAME"].$_SERVER['PHP_SELF']."?start=".($start - $pnumber).">Предыдущие</a>";
}
//выводим ссылки на следующие записи
if ($count > $start + $pnumber) {
echo "<a href=http://".$_SERVER["SERVER_NAME"].$_SERVER['PHP_SELF']."?start=".($start + $pnumber).">Cледующие</a>";
}
?>
|
| |
|
|
|