|
|
|
| Помогите, это очень важно.
<?php
$dir_o = dir ("users_message");
$i = 0;
while ($entry = $dir_o -> read())
{
if (substr ($entry,0,3) == "rec")
{
$names[$i] = substr ($entry,4);
$i++;
}
}
$dir_o -> close();
@sort ($names);
$count = $i;
$count1 = $count;
if (empty ($start))
{
$start = 0;
}
$start = intval ($start);
if ($start < 0)
{
$start = 0;
}
for ($i = $start; $i < $count; $i++)
{
$entry = $names[$i];
$data = file ("users_message/rec.".$entry);
$date = $entry;
$name = trim ($data[0]);
$city = trim ($data[1]);
$email = trim ($data[2]);
$url = trim ($data[3]);
$icq = trim ($data[4]);
echo $msg[5];
}
|
Вот по такой системе у меня отображаются сообщения, как и в здешней гостевой.
Дак вот мучался, и так не получилось написать постраничную навигацию, вся надежда на вас...
Помогите очень надо, я PHP только 2 месяца учу, ито не каждый день. | |
|
|
|
|
|
|
|
для: New
(17.09.2006 в 21:07)
| | Я думаю, что в этой гостевой отображаются они немного по-другому: MySql.. ))
а вот то, что у тебя ничего не выводится не удивительно: не понятно от куда берущееся echo $msg[5] (в скрипте у тебя $msg нигде не определялся).
А вот код:
<?
$dir_rec = dir("user_message");
$i = 0;
while ($entry = $dir_rec->read())
{
if (substr($entry,0,3)=="rec")
{
$names[$i]=substr($entry,4);
$i++;
}
}
$dir_rec->close();
@sort($names);
$count=$i;
$count1=$count;
// а это для корректности (при переходе start передается через url
$start=@$HTTP_GET_VARS["start"];
// здесь вместо 10 можно поставить любую переменную,
// выбирая произвольно к-во выводимых сообщений
if (empty($start)) $start=$i-10;
$start=intval($start);
if ($start<0) $start=0;
print "<center>";
if ($count>$start+10) $count=$start+10;
if ($start != 0)
{
print "<a href=index.php?start=".($start-10).">Предыдущие</a> ";
}
print " <a href=addrec.php>Добавить запись в мою гостевую!! Yo!</a> ";
if ($count1>$start+10)
{
print " <a href=index.php?start=".($start+10).">Следующие</a> \n";
}
print "</center><br>";
for ($i = $count-1; $i >= $start; $i--)
{
$entry=$names[$i];
$data=file("records/rec.".$entry);
$date=$entry;
$name=trim($data[0]);
$city=trim($data[1]);
$email=trim($data[2]);
$url=trim($data[3]);
$msg=trim($data[4]);
// а вот вывод инфы о пользователях
print "<table border=0>
<tr bgcolor=#F0F0F0><td> ";
print "<b>$name</b> ";
if (!empty($city)) print "$city  ";
if (!empty($email)) print "<a href=mailto:$email><i>$email</i></a>\n";
if (!empty($url)) print "<a href=$url>$url</a>";
print "</td><td align=right>".date("\<\b\>d-m-Y\<\/\b\> H - i", $data)."</td></tr>\n<tr><td colspan=2>\n";
print "<p>".$msg."</p>\n";
print "</td></tr></table>\n<br><br>\n";
}
print "<center>";
?>
|
| |
|
|
|
|
|
|
|
для: New
(17.09.2006 в 21:07)
| | // 2 месяца учу, ито не каждый день.
учи каждый день, и будет польза ;))
$start - номер страницы или сообщения, с которого нужно начинать вывод?
$count, как я понял - это общее количество сообщений, так?
в цикле $count нужно заменить на "количество сообщений на странице", а не общее их кол-во
и если $start - это не номер страницы, а номер сообщения, то сделать примерно так:
<?
$num = 5; // кол-во сообщ. на стр.
for ($i = $start; $i <= $num + $start; $i++)
{
****
****
echo $msg[5]; // странная строчка, почему именно 5 ?
}
|
| |
|
|
|
|
|
|
|
для: kasmanaft
(17.09.2006 в 23:56)
| | dim, Спасибо... | |
|
|
|