2016-11-13 7 views
-1

Итак, я использую форму контакта, я создал форму php и html, но он отправляет все на мой адрес электронной почты, за исключением электронной почты, которую пользователь ставит в форме. ниже, ничего не работает ещеФорма для связи (Php и html

PHP:

<?php 
$name = $_POST['name']; 
$email = $_POST['email']; 
$message = $_POST['message']; 

$mail_to = '[email protected]'; 
$subject = 'Message from a site visitor '.$name; 

$body_message = 'From: '.$name."\n"; 
$body_message .= 'E-mail: '.$email."\n"; 
$body_message .= 'Message: '.$message; 

$headers = 'From: '.$email."\r\n"; 
$headers .= 'Reply-To: '.$email."\r\n"; 

$mail_status = mail($mail_to, $subject, $body_message, $headers); 

if ($mail_status) { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Thank you for the message. We will contact you shortly.'); 
     window.location = 'contact_page.html'; 
    </script> 
<?php 
} 
else { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Message failed. Please, send an email to [email protected]'); 
     window.location = 'contact_page.html'; 
    </script> 
<?php 
} 
?> 

HTML:.

  <form action="contact.php" method="post"> 
      <div class="row"> 
       <div class="col-md-4"> 
       <input type="text" class="form-control" id="name" placeholder="Name"> 
       <input type="text" class="form-control" id="email" placeholder="Email"> 
       <input type="text" class="form-control" id="subject" placeholder="Subject"> 
       </div> 


       <div class="col-md-8"> 
       <textarea class="form-control" id="message" rows="25" cols="10" placeholder=" Message Texts..."></textarea> 
       <button type="button" class="btn btn-default submit-btn form_submit">SEND MESSAGE</button> 
       </div> 
      </div> 
      </form> 
+0

Там, кажется, нет никакой ошибки в коде, которую вы предоставили, хотя вы можете проверить, добавив 'эхо $ электронной почты,' проверить, если значение принимается или нет. – Manikiran

+0

Извините за звучание как нуб, но я. Где бы я добавил, что – sabregames

+1

Вам нужно добавить теги 'name' в свои поля ввода. Без них они не будут опубликованы. Пример: '

ответ

0

После прохождения через ваш script.js файла, я наконец понял, проблему. Передаваемая переменная не является email, а ее emaild. Таким образом, ваша коррекция PHP будет:

$email = $_POST['emaild']; 
+0

Btw, вы используете jQuery Ajax. – Manikiran

+0

Я могу что-то изменить под html-файлом, и вы уверены, что php является «emaild», потому что я не получаю никаких сообщений по электронной почте сейчас – sabregames

+0

Это сработало !!! Спасибо огромное! – sabregames

-1

Попытка добавить имя поля на входах вида

Смотрите ниже код

    <form action="contact.php" method="post"> 
        <div class="row"> 
         <div class="col-md-4"> 
          <input type="text" class="form-control" name="name" id="name" placeholder="Name"> 
          <input type="text" class="form-control" name="email" id="email" placeholder="Email"> 
          <input type="text" class="form-control" id="subject" placeholder="Subject"> 
         </div> 


         <div class="col-md-8"> 
          <textarea class="form-control" name="message" id="message" rows="25" cols="10" placeholder=" Message Texts..."></textarea> 
          <button type="button" class="btn btn-default submit-btn form_submit">SEND MESSAGE</button> 
         </div> 
        </div> 
       </form> 

Для более подробной информации см: http://www.w3schools.com/tags/att_input_name.asp

+0

скопировал именно это, но не работает – sabregames

+0

LOL, почему -1? Я просто пытался помочь ... в любом случае, попробуйте сделать – lipinf

+0

Я не сделал -1, но он не работал – sabregames