Форма обратной связи на PHP для WordPress.

Данная форма обратной связи использует php.

Небольшое описание:

  • Содержит 3 поля: Тема, обратный email и сообщение.
  • Обязательное для заполнения: поле сообщение
  • Против спама используется простая проверка на спам (Нужно ввести нужные цифры).
  • К сообщению добавляется ip, host посетителя

 

  1. Для начала установим плагин Allow PHP in Posts and Pages (описание). 
  2. Создадим страницу, в качестве адреса я указал feedback.
  3. Изменим в указанном коде почту на нужную:  $to = "admin@site55.ru";
  4. Меняете данные в форме: поле кому,адрес страницы в теге form.
  5. вроде все.

На момент написания статьи, использовал в форме обратной связи.

 

Код:

<script language="JavaScript" type="text/javascript">
function AutoCap() {
  var TitleResuly = document.getElementById("resultcap");
  var number = document.getElementById("login").value;
  var submity = document.getElementById("submit");
  if (number != "10") {
    TitleResuly.innerHTML = "Вы не верно решили пример";
    submity.style.display = "none";
  } else {
    TitleResuly.innerHTML = "";
    submity.style.display = "block";
  }
};
</script>
[ php ]
if (isset($_POST['EmailSend'])) {
  if (isset($_POST['tema'])) {$tema= $_POST['tema']; if ($tema=='')unset($tema);};
  if (isset($_POST['text'])) {$text= $_POST['text']; if ($text=='')unset($text);};
  if (isset($_POST['mail'])) {$mail= $_POST['mail']; if ($mail=='')unset($mail);};
  if (isset($_POST['login'])){$spam= $_POST['login'];if ($spam=='')unset($spam);};
  $ip = getenv ("REMOTE_ADDR");
  $os = getenv ("HTTP_USER_AGENT");
  $host = getenv ("REMOTE_HOST");
  if(!isset($spam) or $spam!=10){
    echo "[div class='box-error']Вы неверно решили пример :(.[/div]";
  }else{ 
  if(!isset($text) or empty($text)){
    echo "[div class='box-error']Вы не заполнили обязательные поля.[/div]";
  }else{ 
    $to = "admin@site55.ru";
    $subject = "Feedback: $tema";
    $headers = "Content-type: text/plain; charset=UTF-8\r\n";
    $message = "
Обратный e-mail: $mail
Тема: $tema
Сообщение:
$text
--------------------------
IP: $ip 
Браузер и OC: $os
---------------------------
Отправлено с помощью контактной формы на manual1c.ru";
    $ok = mail($to, $subject, $message, $headers);
    if ($ok == true) {
      echo "[div class='box-info good center strong']Письмо отправлено[/div]";
    } else {
     echo "[div class='box-error']Ошибка при отправке письма :([/div]";
    };
  }
 }
}[ /php ]
<form id="send" action="/feedback/" method="post" name="mail" style="margin-left:50px">
<table class="bordernone">
<tr>
<td><label for="email"><b>Email:</b> </label></td>
<td><input type="text" name="mail" id="email" style="width:380px;" width=380px title="Введите правильный адрес" class="required email" /></td>
</tr>
<tr>
 <td><label for="email"><b>Кому:</b> </label></td>
 <td>admin@site55.ru</td>
</tr>
<tr>
 <td><label for="tema"><b>Тема:</b></label></td>
 <td><input type="text" name="tema" id="tema" style="width:380px;" width=380px title="Введите тему" class="required" value="" /></td>
</tr>
</table>
<input type="text" name="EmailSend" id="EmailSend" style="display:none;" value="1" />
<label for="text"><b>Текст сообщения:</b></label>
<textarea cols="53" rows="10" name="text" id="text" title="Введите текст сообщения" class="required"></textarea><br />
<p><label for="text"><b>Перед отправкой решите пример:</b> <br />20 - 10 равно </label><input type="text" name="login" id="login" style="width:80px;" title="Введите число" class="required" onchange="AutoCap();" /><input type="button" value="Проверить" onclick="AutoCap();" /><br />
<div id="resultcap"></div>
<input style="display:none;" type="submit" value="Отправить" id="submit" class="submit" />
</form>


comments powered by Disqus

Популярное