Хочу сделать постраничный вывод. Реализую так:
$k = 7; //сколько пати на одной странице
$p = $_GET['p']; //номер страницы
if (empty($p)){$p = 1;}
$p1 = ($p - 1) * $k;
$query = "SELECT * FROM `party_table` ORDER BY `id` DESC LIMIT $p1, $k";
$result = mysql_query($query) or die (mysql_error());
Но почему-то выводится неправильно. то есть если p=1, то выводятся записи не с первой, а со второй, при p=2, не с восьмой, а с девятой. При этом выводятся не 7 записей , а только 6.
Спустя 18 минут, 52 секунды (1.09.2011 - 16:02) bobo написал(а):
Кэп говорит, что:
if (empty($p)) { $p=0; }
$start = $p * $k
if (empty($p)) { $p=0; }
$start = $p * $k
Спустя 4 минуты, 44 секунды (1.09.2011 - 16:07) MichaelPak написал(а):
а какая разница? в моем случае, первая страница при p=1, в твоем при p=0.
Спустя 3 минуты, 17 секунд (1.09.2011 - 16:10) ApuktaChehov написал(а):
Потому что только программисты считают с нуля
Первая запись это запись под номером 0, не 1.

Первая запись это запись под номером 0, не 1.
Спустя 1 минута, 14 секунд (1.09.2011 - 16:12) MichaelPak написал(а):
из-за
P.S. проверил по вашему, все равно перепрыгивает.
$p1 = ($p - 1) * $k;у меня и будет идти с 0.
P.S. проверил по вашему, все равно перепрыгивает.
Спустя 1 минута, 57 секунд (1.09.2011 - 16:14) bobo написал(а):
Мда, тяжелый случай.
Ты попробуй для начала, а потом спорить будем.
Ты попробуй для начала, а потом спорить будем.
Спустя 3 минуты, 39 секунд (1.09.2011 - 16:17) MichaelPak написал(а):
Я попробывал сразу же. Скорее всего ошибка не в запросе. Буду копаться.
И bobo, на листочке проверь мой алгоритм, работает абсолютно также.
И bobo, на листочке проверь мой алгоритм, работает абсолютно также.
Спустя 7 минут, 6 секунд (1.09.2011 - 16:24) ApuktaChehov написал(а):
А вы посмотрите, чего у вас в запрос попадает.
Это же элементарно.
Это же элементарно.
Спустя 5 минут, 24 секунды (1.09.2011 - 16:30) MichaelPak написал(а):
Уже. Поэтому и говорю, что проблема не в запросе.
Спустя 1 минута, 33 секунды (1.09.2011 - 16:31) ApuktaChehov написал(а):
Расскажите, чему равны переменные $p1 и $k, когда вы переходите на первую страницу, и на вторую.
Спустя 7 минут, 28 секунд (1.09.2011 - 16:39) MichaelPak написал(а):
$k всегда равно 7. При $p = 1, $p1 = (1 - 1) * 7 = 0. При $p = 2, $p1 = (2 - 1) * 7 = 7. Я нашел ошибку. Я не знаю, от куда у меня руки растут, но было так:
Видимо что то тестил.
$query = "Запрос";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
while($row = mysql_fetch_array($result))
{
...
Видимо что то тестил.