|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Постарничный вывод данных, помогите. |
|
Постарничный вывод данных, помогите.
|
Ветеран Сообщения: 675 |
Профиль | Отправить PM | Цитировать У меня такая ситуация - на каждой странице должно быть по десять
"сообщений", и если больше десяти, то идёт постраничный их вывод вторая, третья и так далее. Но вот после дватцатой строки третья страница(номер) появляется заведомо, какбудто вней есть строка и по клике на неё или по "В конец" попадаю на пустую страницую. Некрасиво, мне так не нравится, я так совсем не хочу. Я выделил этот момент жирным. 1.php ===== <head> <META http-equiv=content-type content="text/html; charset=windows-1251"> <style> A:link {color: #000000; text-decoration: underline; font-family: tahoma; font-size: 11px; font-weight: normal}; A:visited {color: #000000; text-decoration: underline; font-family: tahoma; font-size: 11px; font-weight: normal}; A:hover {color: #000000; text-decoration: none; font-family: tahoma; font-size: 11px; font-weight: normal}; </style> </head> <CENTER> <a href="2.php">Добавить сообщение</a> <BR> <BR> <? $file = file("aaa.txt"); $count = count($file); $file = array_reverse($file); if (empty($start)){ $start = 0; } if ($start < 0){ $start = 0; } echo "<CENTER><B>".(($start / 10) + 1)."</B></CENTER>"; echo "<table border=0><tr><td width=120 align=left>"; if ($count > $start + 10){ echo "<a href=1.php?start=".($count - $count % 10).">В конец</a> . "; echo "<a href=1.php?start=".($start + 10).">Вперёд</a> . "; } echo "</td>"; echo "<td align=center>"; if ($count > $start + 10 || $start > $count - $count){ for ($i = ($count - $count); $i <= ($count - $count % 10) / 10; $i ++){ echo "<a href=1.php?start=".($i * 10).">".($i + 1)."</a> . "; } } if ($count > $start + 10){ $count = $start + 10; } echo "</td>"; echo "<td width=120 align=right>"; if ($start > $count - $count){ echo "<a href=1.php?start=".($start - 10).">Назад</a> . "; echo "<a href=1.php?start=".($count - $count).">В начало</a>"; } echo "</td></tr></table>"; echo "<table width=360 border=1>"; for ($i = $start; $i < $count; $i ++){ $line = explode("\t", $file[$i]); echo "<tr valign=top>"; echo "<td bgColor=#ffffff>".$line[0]."</td>"; echo "<td bgColor=#ffffff>".$line[1]."</td>"; echo "<td bgColor=#ffffff>".$line[2]."</td>"; echo "<td bgColor=#ffffff>".$line[3]."</td>"; echo "</tr>"; } echo "</table>"; ?> <BR> <a href="2.php">Добавить сообщение</a> </CENTER> 2.php ===== <? if (isset($_GET['name']) && isset($_GET['city']) && isset($_GET['country'])){ $a = ucfirst(htmlspecialchars($_GET['name'])); $b = ucfirst(htmlspecialchars($_GET['city'])); $c = ucfirst(htmlspecialchars($_GET['country'])); if (empty($a) || empty($b) || empty($c)){ echo " "; } else { $t = date("Y.m.d, H:i"); $file = fopen("aaa.txt", "a+"); flock($file, 2); fwrite($file, $a."\t".$b."\t".$c."\t".$t."\n"); flock($file, 3); fclose($file); echo "<html><head>"; echo "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=1.php'>"; echo "</html></head>"; } } ?> <table border=0 cellspacing=0 cellpadding=0> <form action=2.php method=get> <tr> <td>Name:</td> <td><input type="text" name=name size=20 maxlength=20></td> </tr> <tr> <td>City:</td> <td><input type="text" name=city size=20 maxlength=20></td> </tr> <tr> <td>Country:</td> <td><input type="text" name=country size=20 maxlength=20></td> </tr> <tr> <td colspan=2 align=right><input type="submit" value=" OK "></td> </tr> </form> </table> <BR> <a href="1.php">View results</a> |
|
------- Отправлено: 16:54, 14-06-2005 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать А вы уверены, что жирная часть вообще работает? Имхо, у операции "-" приоритет выше, чем у вычисления остатка. У вас вообще забавная форма записи числа 0, если бы не тот же самый приоритет (у условий он выше чем у "+" и "-").
|
------- Отправлено: 13:53, 15-06-2005 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 675
|
Профиль | Отправить PM | Цитировать Жирная часть работает, но не так как надо.
Цитата:
У вычисления остатка приоритет больше чем у "-" это ясно мне двоечнику. Цитата:
Но в итоге я всё переписал, и всё прекрасно без ошибок работает. И наконец я могу спать спокойно. Если вдруг кому интересно, то могу показать(с коментариями) рабочий скрипт с *.txt или с БД вот такого плана: Вконец Вперёд 1.2.3. Назад Вначало. |
||
------- Отправлено: 16:51, 15-06-2005 | #3 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Да, согласен, на счет приоритета забираю свои слова назад и приношу извинения. Прична заблуждения ниже. Скверно, рушатся все иллюзии .
Скрин используемого мануала (~10k) Дока на php.net (en) Дока на php.net (ru) В общем не трудно заметить, что в России все как всегда наоборот... |
------- Отправлено: 02:22, 16-06-2005 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Драйвер - Вывод изрбражения... помогите... | TheSaint | Microsoft Windows 7 | 3 | 16-01-2010 14:16 | |
C/C++ - bat & cmd - сокрытие окна и вывод данных консоли в интерфейсе нашей программы | crashtuak | Программирование и базы данных | 5 | 07-05-2009 16:40 | |
Java - Вывод данных без обновления страницы | AnaStas | Программирование и базы данных | 3 | 24-09-2008 12:21 | |
XSL многократный вывод данных | Lexxx_HU | Вебмастеру | 1 | 27-02-2007 11:47 | |
Вывод данных из файла на PHP | fossil | Вебмастеру | 6 | 12-10-2005 22:59 |
|