Реклама на сайте Advertise with us

Чат на php Есть вопрос

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

SexBlogs.Name

С нами с 13.10.03
Сообщения: 3159
Рейтинг: 962

Ссылка на сообщениеДобавлено: 19/04/07 в 11:18       Ответить с цитатойцитата 

Простейший код чата. Работает.
Только 1 вопрос - если обновить страницу (F5) последнее сообщение самостоятельно добавляется в файл и соответственно на страницу.
Как сделать так что бы ЗАПИСЬ в файл осуществлялась только при нажатии кнопки субмит?

Код:
<html>
<form method="POST">
Enter Name: <br><input type="text" name="chatname" size="20" value="Anonimous"><br>
Enter Message: <br><textarea name="message" cols="110" rows="5"></textarea><br>
<input type="submit" name="submit" value="Post Message"><br>
</form>
</html>
<?
        if(@$_REQUEST['submit'])
        {
           $name = $_POST[chatname];
           $message = $_POST[message];
           $line = "<b>".date("m.d.y, g:i a")." <u>".$name."</u></b><br>\n".$message."<br><br>\n\n";
           $file = fopen ("all_messages.txt","a");
           fputs ( $file, $line);
   fclose ($file);
        }
       
      
      $all_messages = file_get_contents("all_messages.txt");
      $SplitAllMessages = explode("\n\n",$all_messages);
      
      $a = count($SplitAllMessages);
      $var = 0;
      for($i = $a-1; $i >= $var ;$i--)
      {
         echo $SplitAllMessages[$i];
        }

?>

Submit your blog to the sex blogs list. PR=3 Quickly approve! 10 posts min. Ping every 6 hour!

0
 
+


С нами с 14.02.07
Сообщения: 25
Рейтинг: 28

Ссылка на сообщениеДобавлено: 19/04/07 в 11:23       Ответить с цитатойцитата 

если есть <input type="submit" name="submit" value="Post Message">
то при нажатии сабмита появится переменная $_POST['submit']

тоесть проверяешь if($_POST['submit']=="Post Message") бла бла бла

6
 



С нами с 26.02.03
Сообщения: 788
Рейтинг: 299

Ссылка на сообщениеДобавлено: 19/04/07 в 11:54       Ответить с цитатойцитата 

Довольно непросто, надо мутить с куками или сессиями, чексуммами и т.п.

Замени
Код:

fclose ($file);

на
Код:

fclose ($file);
echo '<meta http-equiv="refresh" content="1;url=index.php">';

После отправки сообщения юзер сразу будет редиректиться обратно на форму без пост-данных, если скрипт имеет название index.php Так сделанно на большинстве форумов и гестов.

Либо записывай в хидден-поле и в куки юзера текущий таймстэмп, и во время обработки запроса проверяй, не было ли повтора.

6
 



С нами с 18.01.06
Сообщения: 322
Рейтинг: 487

Ссылка на сообщениеДобавлено: 19/04/07 в 12:45       Ответить с цитатойцитата 

Может быть так
Код:

if(isset($_POST['submit']))
{
        //bla-bla-bla
       //записать в файл
}

6
 

SexBlogs.Name

С нами с 13.10.03
Сообщения: 3159
Рейтинг: 962

Ссылка на сообщениеДобавлено: 19/04/07 в 13:29       Ответить с цитатойцитата 

2all
бесполезно

2cookie
спасибо сработало icon_smile.gif

Submit your blog to the sex blogs list. PR=3 Quickly approve! 10 posts min. Ping every 6 hour!

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »