Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Php - как перейти на новую страницу.(комментарии)

2.1K
23 ноября 2005 года
Ariman
102 / / 20.10.2005
Народ, есть следующий скрипт комментариев.
Код:
$gbpath="gb.dat";
if(!file_exists($gbpath))
$gbpath  
{  
$f=fopen($gbpath,"w")or die("Не могу создать файл");
flock($f,2) or die("Невозможно заблокировать файл");
fwrite ($f,"",0);
@chmod($f, 0664);
fclose($f);
}    
if(getenv("REQUEST_METHOD")=="POST")
{
$f=fopen($gbpath,"r") or die("Не могу открыть файл");
$oldData = fread($f, filesize ($gbpath));fclose($f);
$f=fopen($gbpath,"w+") or die("Не могу открыть файл");
flock($f,2) or die("Невозможно заблокировать файл");
fputs($f,"$aname\n");
fputs($f,"$email\n");       $mess=ereg_replace("\n"," ",$mess);
fputs($f,"$mess\n");
fwrite($f,$oldData);
fclose($f);
}  

  // Вывод заголовка каменнтов

   <html>  <title></title>  <body>
$f=fopen($gbpath,"r") or die("Не могу открыть файл");
while(1){                           $aname=fgets($f,1000);
$email=fgets($f,1000);
$mess=fgets($f,1000);
if(feof($f)) break;
echo "
<TABLE width=100% border=1 cellspacing=1 cellpadding=2 align=center bordercolor=#D6E6A5>

<TR> <TD bgcolor=#E1E1E1 width=100%>          <font color=#B62727>Аффтар: <a href=mailto:$email>$aname</a></font>

</TD></TR>

<TR><TD bgcolor=#F6F6F6 width=100% valign=top> $mess</TD></TR>          </TABLE>"
;
}  
fclose($f);

и тут форма для записи сообщений.

<form action=index.php method=post>  Ваше имя : <input type=text name=aname>
  E-mail :<input type=text name=email>
  Сообщение :<textarea name=mess></textarea>
  <input type=submit value=Записать><input type=reset value=Очистить>  </form>



Все это и еще дизайн находятся в пхп-файле, сообщения и автор сохраняются в файле gb.dat.

Прроверки, как видите на заполненность полей нету,

А вопрос у меня такой, как сделать так что-бы, после появления к примеру 20 сообщений, создавалась вторая страница, и соответственно появлялись ссылки на первую и вторую, и последующие страницы. помогите пожалуйста.

И еще вопрос, нежно сделать проверку чтобы писать могли только юзеры, кторые прописаны скажем в текстовом файле,ну и с паролем соответственно.

Вот, подскажите, помогите чем можете, может линком на готовую такую штуку, или мыслью, кодом.

Заранее спасибо за ответ.
239
23 ноября 2005 года
Dolonet
1.7K / / 20.05.2000
Приведи, пожалуйста, нормальный код. Ни-че-го не понятно, а разбираться рабочее время не позволяет :/
8
23 ноября 2005 года
mfender
3.5K / / 15.06.2005
Нифига не понял. А каким образом ты в файле .dat определяешь начало/конец записи?
2.1K
23 ноября 2005 года
Ariman
102 / / 20.10.2005
Сорри, я это увидел когда запостил, извините плиз.
Теперь отредактировал.
Пример работы скрипта http://gim107.jino-net.ru/maps/maps.php вот.
239
23 ноября 2005 года
Dolonet
1.7K / / 20.05.2000
А не проще ли работать с БД и двумя простыми табличками?
8
23 ноября 2005 года
mfender
3.5K / / 15.06.2005
Цитата:
Originally posted by Dolonet
А не проще ли работать с БД и двумя простыми табличками?


Вот и я о том же: любят люди себе жизнь усложнить и велосипед изобрести.

2.1K
23 ноября 2005 года
Ariman
102 / / 20.10.2005
Одна таблица для разрешенных имен, а вторая для хранения сообщений? Вся проблема в том, что...м как бы сказать, на халявном хостинге одна бд, и она уже используется. или можно обращаться к ней, но к другим таблицам?

Работал с Vb. Net, и с базой скул от майкрософта, а че как с майскул, не знаю..взял диск, сегодня попробую поставить у себя.

Если отбросить то что делается это с двумя таблицами, как сделать переход на новую страницу?

P.S В пхп новичек, профан..:{
239
24 ноября 2005 года
Dolonet
1.7K / / 20.05.2000
Я с трудом могу придумать задачу, которая потребует две БД. Естественно, можно безболезненно работать со своими таблицами!

А переход на другую страницу делается через часть запроса к БД "LIMIT $m, 30"
2.1K
24 ноября 2005 года
Ariman
102 / / 20.10.2005
Вот и подумал о том же.. *стыдно*

Не могли бы вы примерно описать алгоритм что-ли, как что вначале надо сделать, простыми словами, а я бы сам уже додумывал и реализовывал...?
239
24 ноября 2005 года
Dolonet
1.7K / / 20.05.2000
Ничего невозможного :)
Если работаешь с БД, то в SQL запросе делаешь такой лимит. Потом делаешь кнопки для каждой следующе страницы, которые посылают к этой же странице, но с переменной, например, item. В скрипте проверяешь этот item и вставляешь в строку запроса в качестве первого параметра лимита. ну и оставшиеся кнопочки генерируешь.
2.1K
29 ноября 2005 года
Ariman
102 / / 20.10.2005
Смысл я понял, спасибо. Но реализовать я все же не могу. :( Может еще наводок? ;)
плз
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог