2015-08-04 3 views
0

Я сложена. Необходимо отправить значение формы в адрес электронной почты. Вот HTML кодОтправка значений форм с использованием PHP

<form class="form" id="form1"> 
          <p class="name"> 
          <input name="name" type="text" class="validate[required,custom[onlyLetter],length[0,100]] feedback-input" placeholder="Name" id="name" /> 
          </p>  
          <p class="email"> 
          <input name="email" type="text" class="validate[required,custom[email]] feedback-input" id="email" placeholder="Email" /> 
          </p> 
          <div class="submit"> 
          <input type="submit" value="Got it" id="button-blue"/> 

          </div> 

        </form> 

Сценарий также

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#form1").submit(function() { //устанавливаем событие отправки для формы с id=form 
       var form_data = $(this).serialize(); //собераем все данные из формы 
       $.ajax({ 
       type: "POST", //Метод отправки 
       url: "send.php", //путь до php фаила отправителя 
       data: form_data, 
       success: function() { 
         //код в этом блоке выполняется при успешной отправке сообщения 
         alert("Ваше сообщение отпрвлено!"); 
       }); 
     }); 
    });  
    </script> 

И send.php файл :)

<? 
if((isset($_POST['name'])&&$_POST['name']!="")&&(isset($_POST['email'])&&$_POST['email']!="")){ //Проверка отправилось ли наше поля name и не пустые ли они 
     $to = '[email protected]'; //Почта получателя, через запятую можно указать сколько угодно адресов 
     $subject = 'Данные заказчика'; //Загаловок сообщения 
     $message = ' 
       <html> 
        <head> 
         <title>'.$subject.'</title> 
        </head> 
        <body> 
         <p>Имя: '.$_POST['name'].'</p> 
         <p>Телефон: '.$_POST['email'].'</p>       
        </body> 
       </html>'; //Текст нащего сообщения можно использовать HTML теги 
     $headers = "Content-type: text/html; charset=utf-8 \r\n"; //Кодировка письма 
     $headers .= "From: Отправитель <[email protected]>\r\n"; //Наименование и почта отправителя 
     mail($to, $subject, $message, $headers); //Отправка письма с помощью функции mail 
} 
?> 

Все выглядит нормально, но не работает. Инструменты Dev говорят о неожиданном токене в скрипте, но я не вижу, где. Может ли кто-нибудь помочь?

+0

, в котором линия отображается ошибка? – Lal

+0

какие инструменты? JS? PHP? –

+0

Можете ли вы опубликовать полное сообщение об инструментах dev? – sics

ответ

1

У вас не хватает закрывающие наручей, вот код исправлен:

$(document).ready(function() { 
    $("#form1").submit(function() { //устанавливаем событие отправки для формы с id=form 
     var form_data = $(this).serialize(); //собераем все данные из формы 
     $.ajax({ 
      type: "POST", //Метод отправки 
      url: "send.php", //путь до php фаила отправителя 
      data: form_data, 
      success: function() { 
       //код в этом блоке выполняется при успешной отправке сообщения 
       alert("Ваше сообщение отпрвлено!"); 
      } 
     }); //Missing bracers here. 
    }); 
}); 

И я хотел бы предложить добавить e.preventDefault() для того, чтобы избежать формы быть занесен нормально:

$(document).ready(function() { 
    $("#form1").submit(function (e) { //устанавливаем событие отправки для формы с id=form 
     var form_data = $(this).serialize(); //собераем все данные из формы 
     e.preventDefault(); //Added this. 
     $.ajax({ 
      type: "POST", //Метод отправки 
      url: "send.php", //путь до php фаила отправителя 
      data: form_data, 
      success: function() { 
       //код в этом блоке выполняется при успешной отправке сообщения 
       alert("Ваше сообщение отпрвлено!"); 
      } 
     }); //Missing bracers here. 
    }); 
});