Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
Другие темы раздела
PHP Очистка полей формы обратной связи после отправки http://www.cyberforum.ru/php/thread2269923.html
Как сделать так, чтобы после отправки поля формы очищались? или же реализовать возможность повторно отправить форму? При повторной попытке отправки выдает ошибку. Форма: <? session_start(); ...
PHP Как передать id товара в всплывающую форму обратной связи? Здравствуйте! Столкнулась с проблемой передачи id элемента каталога. Представьте у меня на странице большой список товаров и на каждом есть кнопка "оставить заявку на звонок", тыкая на которую в... http://www.cyberforum.ru/php/thread2269918.html
PHP Переменная с увеличением на 1 в цикле
Здравствуйте есть цикл с оператором while, выводит повторяющиеся блоки. Каждому блоку нужно добавить свой айдишник. Как задать переменную, чтобы например первый блок выводился с id="1" 2-ой с id="2"...
PHP Бегущая строка
Приветствую, есть у меня одна проблемка. Есть цикл, который выводит из БД текст в бегущую строку, но для каждого нового intro_text создается еще одна бегущая строка, можно ли как-то их объединить? ...
PHP Переадресация http://www.cyberforum.ru/php/thread2268783.html
Всем здравствуйте) Голову уже сломал) ситуация такая есть страница авторизации, пользователи есть 3 типов: инженер, пользователь, и пользователь компании. У всех свои личные кабинеты, и при...
PHP Cмена цвета текста навигации при загрузке другой страницы на страницах разные бэкграунды темные и светлые, подскажите как сделать смену цвета навигации в зависимости от загруженой страницы, например если выбрана страница home сделать цвет текста навигации... подробнее
winwin22
7 / 7 / 5
Регистрация: 07.06.2018
Сообщений: 110
30.06.2018, 12:37 0

Кто может поделиться рабочей формой обратной связи?

30.06.2018, 12:37. Просмотров 224. Ответов 6
Метки (Все метки)

Ответ

на попробуй это я там намудрил !комменты сам поправь...
если кому надо доведите до ума и опубликуйте... спешу ... а скрипт работает.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
$err='';
if ($_SERVER['REQUEST_METHOD']=='POST') {  
  //обрабатываем полученные переменные.  
  foreach($_POST as $key => $value) {  
    //сначала делаем обработку, которая не испортит данные,  
    //если их придется выводить в форму снова, при ошибке  
    $value=trim($value); // убираем пробелы в начале и в конце переменной.  
    if (get_magic_quotes_gpc()) $value = stripslashes($value); //убираем слеши, если надо  
    $value=htmlspecialchars($value,ENT_QUOTES); //заменяем служебные символы HTML на эквиваленты  
    $_POST[$key]=$value; //все изменения записываем в массив $_POST  
    //дальше делаем изменения, которые пойдут только в файл,  
    //а в форму их выводить не нужно.  
    $value=str_replace("\r","",$value); // заменяем все переводы строк  
    $value=str_replace("\n","<br>",$value); //на <br>  
    $msg[$key]=$value; //и присваиваем новые значения элементам массива $msg.  
  }  
  //дальше делаем разнообразные проверки. Они здесь для  
  //примера, вы можете добавлять, какие захотите  
  //главное то, что при любых ошибках переменная $err становится не пустой.  
  //то есть, она одновременно является и флагом ошибки и  
  //содержит все сообщения об ошибках.  
    /*
  if (!$name) $err.="Вы забыли написать свое имя<br>";  
  if (!$notes) $err.="Вы забыли написать сам отзыв!<br>";  
  if (strlen($name) > 30) $err.="Длина имени не может превышать 30 символов<br>";  
  if (strlen($notes) > 1000) $err.="Длина отзыва не может превышать 1000 символов<br>";  
  if (strlen($email) > 50) $err.="емейл длинноват...<br>";  
  if (preg_match("/[0-9a-zA-Zа-яА-ЯЁё]{30,}/",$notes,$matches)) {  
    $err.="В отзыве присутствует слишком длинное слово ".$matches[0].". Cократите или разбейте его, пожалуйста.";  
  }  
  $email_ok=eregi("^([_\.0-9a-z-]+@)([0-9a-z][0-9a-z-]+\.)+([a-z]{2,4})$", $email);  
  if (!$email_ok && $email) $err.="Ошибка в емейле. Если не хотите, то просто не пишите!<br>";  
  //если ошибок нет, то пишем в файл  
  */
  if (!$err) {  
    $s=$msg['name']."|".$msg['email']."|".$msg['notes']."|".time()."\n";  
    $fp=fopen("gbook.txt","a");  
    fwrite($fp,$s);  
    fclose($fp);  
    //после записи перенаправляем браузер на страницу,  
    //которая отображает сообщения  
    Header("Location: ".$_SERVER['PHP_SELF']);  
    //и обязательно завершаем работу скрипта  
    exit;  
  }  
  //если у нас были ошибки при заполнении формы, то в файл  
  //ничего не запишется, скрипт не завершится, а выведется  
  //форма, с заполненными полями и сообщения об ошибках  
} else {  
  //если это не пост, то присваиваем переменным, выводимым  
  //в форме пустую строку  
  $_POST['name'] = $_POST['email'] = $_POST['notes'] ='';  
}  
?>  
<html>  
<head></head>  
<body>  
<?php if ($err) {echo '<font color=red><b>'.$err.'</b></font>';}else{} ?>  
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST"><br>  
Name: <input type="text" name="name" value="<?php echo $_POST['name'] ?>"><br>  
Email: <input type="text" name="email" value="<?php echo $_POST['email'] ?>"><br>  
Notes: <textarea rows="3" cols="30" name="notes"><?php echo $_POST['notes'] ?></textarea><br>  
<input type="submit" name="submit">  
</form>  
</body>  
</html>


Вернуться к обсуждению:
Кто может поделиться рабочей формой обратной связи?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2018, 12:37

Скрипт обратной связи
Добрый день. Подскажите, пожалуйста, как реализовать функцию обратной связи,...

Форма обратной связи
Всем привет! Возникла проблема, уже не знаю как решить ее (( Суть в...

Форма обратной связи
Добрый день.Столкнулся тут с проблемой и не могу увидеть ее :) .Суть проблемы...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru