Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 01.12.2017, 02:00
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

Но при перезагрузке страницы данные будут отправляться повторно, я вот как говорил по вашему коду добавить можно вниз
<?php
$name = $email = $comment = "";

function test_input($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
?>

	<h2>Ваше сообщение в тех поддержку сайта</h2>
	<form method="post" >
		Имя:
		<input type="text" name="name">
		<br>
		<br> E-mail:
		<input type="text" name="email">
		<br>
		<br> Комментарий:
		<textarea name="comment" rows="5" cols="40"></textarea>
		<br>
		<br>
		<input type="submit" name="submit" value="Отправить">
	</form>

<?php
/***
 *** вот куда добавить
 ***/
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = test_input($_POST["name"]);
    $email = test_input($_POST["email"]);
    $comment = test_input($_POST["comment"]);
    echo "<h2>Сообщение отправленно!</h2>";
}
?>

___
Вот самый простой вариант, что-бы при перезагрузке форма повторно не отправлялась.
<?php
function test_input($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
if (!empty($_POST["name"]) and !empty($_POST["email"]) and !empty($_POST["comment"])) {
    $name = test_input($_POST["name"]);
    $email = test_input($_POST["email"]);
    $comment = test_input($_POST["comment"]);
    exit ('<html>
    <head>
        <meta http-equiv="refresh" content="3; url=' . $_SERVER['PHP_SELF'] . '">
    </head>
    <body>Сообщение отправлено!</body>
</html>');
}
?>

<h2>Ваше сообщение в тех поддержку сайта</h2>
<form method="post">
    Имя:
    <br>
    <input type="text" name="name">
    <br>
    E-mail:
    <br>
    <input type="text" name="email">
    <br>
    Комментарий:
    <br>
    <textarea name="comment" rows="5" cols="40"></textarea>
    <br>
    <input type="submit" name="submit" value="Отправить">
</form>

Последний раз редактировалось Lion777, 01.12.2017 в 02:21.
Ответить с цитированием
  #12 (permalink)  
Старый 01.12.2017, 07:43
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Aetae
htmlspecialchars($data)
Сообщение от Aetae
htmlspecialchars($_SERVER["PHP_SELF"])
Зачем это?
Ответить с цитированием
  #13 (permalink)  
Старый 01.12.2017, 07:45
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

KATRIN1786492,
Чтобы не происходило повторной отправки, нужно сбрасывать POST данные, для этого перенаправляйте пользователя.
Ответить с цитированием
  #14 (permalink)  
Старый 01.12.2017, 10:55
Интересующийся
Отправить личное сообщение для KATRIN1786492 Посмотреть профиль Найти все сообщения от KATRIN1786492
 
Регистрация: 20.11.2017
Сообщений: 29

Огромное спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести в html с помощью Java переменную PHP DDSSDD Серверные языки и технологии 12 14.07.2016 22:11
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Связь между страницами с javascript и php ... и обратно okrip25 AJAX и COMET 7 09.01.2012 14:43
Как передать картинку из javascript в php KIVagant AJAX и COMET 3 12.05.2010 11:54
javascript и php (Вопрос) Гауляйтер Общие вопросы Javascript 3 06.05.2009 09:23