Помощник
|
Форма отправки комментариев, как сбросить данные |
Piter_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
Anonym |
22.3.2013, 16:17;
Ответить: Anonym
Сообщение
#2
|
|
вопрос нужно ли использовать сессии в данном случае, если пользователь только отправляет данный комментарий и всё или можно обойтись без сессий . Ну и зачем вам сессии тут? Нижеуказанный код вроде бы отрабатывает и после того как все поля заполнены выдает введенные данные и удаляет их из формы, но как сделать так что бы введенные данные удалялись из формы если мы нажимаем в браузере стрелку назад. а зачем это надо, или я чего-то не понял...? |
|
|
Piter_hb
|
Сообщение
#3
|
|
|
|
|
Anonym |
22.3.2013, 17:28;
Ответить: Anonym
Сообщение
#4
|
|
после отправки комментария header("Location:".$_SERVER['HTTP_REFERER']);
|
|
|
Zippovich |
22.3.2013, 18:07;
Ответить: Zippovich
Сообщение
#5
|
|
это дурацкая защита от дурака
как по мне это полезно что данные сохраняются - не нужно заново вводить имя, отчество, емейл и пр. поля. |
|
|
Piter_hb
|
Сообщение
#6
|
|
|
|
|
Piter_hb
|
Сообщение
#7
|
|
это дурацкая защита от дурака как по мне это полезно что данные сохраняются - не нужно заново вводить имя, отчество, емейл и пр. поля. Я наверное плохо объяснил, данный скрипт сохраняет данные введенные и так, если поля не заполнены или с ошибкой, то верно введенные данные сохраняются не обнуляются и пользователь просто дописывает правильно оставшиеся. После отправки если все проверки прошли верно, данные отправляются(в данном случае выводятся на страницу) и форма очищается - всё красиво. Но если пользователь по какой-либо причине листанет страницу браузера назад, но он увидит свой предпоследний шаг, т.е. заполненные поля и может снова отправить те же данные второй раз!!! Хотелось бы что бы он видел при листании назад просто пустую чистую форму. |
|
|
Arks |
22.3.2013, 23:28;
Ответить: Arks
Сообщение
#8
|
|
Piter, по Вашему коду этого не видно и думаю гадалки с прорецателями как обычно зажигают на мальдивах...Короче говоря, нужно больше кристаллов!
Вы можете сделать отдельный скрипт или это где-то далеко у Вас закопано в недрах веб-приложения? Вы можете предоставить доступ к веб-приложению для решения проблемы? Без ответов говорить о чем-то бессмысленная потеря времени а-ля "у меня что-то где-то не работает, вот Вам пара строчек кода, как же мне всё починить". |
|
|
Piter_hb
|
Сообщение
#9
|
|
Piter, Вы можете сделать отдельный скрипт или это где-то далеко у Вас закопано в недрах веб-приложения? Вы можете предоставить доступ к веб-приложению для решения проблемы? Так в том то и дело что нет ни какого веб-приложения, я просто учусь и поставил себе такую задачу, полный код я представил, запускаю файл php , выдается форма я её заполняю, если всё заполнено верно при нажатии кнопки Отправить выдает :Ваш комментарий успешно добавлен, спасибо, далее выводятся данные и пустая форма, всё в порядке, но при нажатии назад в браузере мы видим предпоследний шаг, я прошу помощи что бы форма очищалась... я уже и это смотрю ob_start(); только ни фига не понятно... |
|
|
Piter_hb
|
Сообщение
#10
|
|
[PHP]
<?php error_reporting(E_ALL); $text = !empty($_POST['text']) ? $_POST['text'] : null; $email = !empty($_POST['email']) ? $_POST['email'] : null; $slovo = !empty($_POST['slovo']) ? $_POST['slovo'] : null; $ip=$_SERVER['REMOTE_ADDR']; phpinfo(32); if($_SERVER['REQUEST_METHOD']=='POST') { foreach($_POST as $key=>$value) { $value=trim(strip_tags($value)); if (get_magic_quotes_gpc()) $value = stripslashes($value); $_POST[$key] = $value; } $oshib = ''; if (!$text) $oshib.='Вы не ввели имя!<br>'; if(strlen($text)>29) $oshib.="Вы ввели слишком длинное имя,укоротите проявите фантазию!<br>"; if (!$email) $oshib.="Вы не ввели email!<br>"; if (!$slovo) $oshib.="А где ваш комментарий ??<br>"; echo $oshib; if(!$oshib) { /*?> $co = mysql_query("INSERTн INTO `comment` (`username`,`email`) VALUES('$text','$email')"); <?php */ $kl="Ваш комментарий успешно добавлен, спасибо"; echo $kl; echo htmlspecialchars($text).'<br>'.htmlspecialchars($email).'<br>'.nl2br(htmlspecialchars($slovo)); echo '<br>'.$ip.'<br>'; $_POST['text']=$_POST['email']=$_POST['slovo']=NULL; } } ?> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <p>Введите ваше имя: <input name="text" maxlength="30" type="text" value="<?php echo $_POST['text'];?>"></p><br/> <p>Введите ваш email: <input name="email" maxlength="30" type="text" value="<?php echo $_POST['email']; ?>"></p><br/> <p>Ваш комментарий Введите ваше сообщение: <textarea name="slovo" cols="50" rows="10"><?php echo $_POST['slovo'];?></textarea></p><br/> <p align="center"> <input name="ok" type="submit" value="Отправить"></p> </form> [/PHP] |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Арбитражники, как ведете учет расходов и доходов? | 12 | Boymaster | 1925 | Вчера, 21:03 автор: MisterBit |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 29 | freeax | 4817 | 17.4.2024, 1:19 автор: sergio11 |
|
Как вы отдыхаете от работы за компом | 148 | adw-kupon.ru | 19715 | 8.4.2024, 10:37 автор: Skyworker |
|
Как вы бросили работу и перешли на заработок с сайтов? | 18 | uahomka | 3109 | 5.4.2024, 5:53 автор: Skyworker |
|
Как бездомные хранят деньги? | 81 | metvekot | 13660 | 31.3.2024, 12:44 автор: Boymaster |
Текстовая версия | Сейчас: 20.4.2024, 8:10 |