2016-04-26 3 views
0

Я работаю на веб-сайте, и форма в коде не работает. Что я могу сделать, чтобы заставить его работать и поместить его в действие. Вот код формы ....Форма CSS для отправки по электронной почте данных не работает

 <div class="form"; action="mail.php"; method="post"> 
     <input class="input-text" type="text" name="name" value="Your Name   *" onFocus="if(this.value==this.defaultValue)this.value='';"  onBlur="if(this.value=='')this.value=this.defaultValue;"> 
     <input class="input-text" type="text" name="email" value="Your E- mail *" onFocus="if(this.value==this.defaultValue)this.value='';" onBlur="if(this.value=='')this.value=this.defaultValue;"> 
     <textarea class="input-text text-area" name="message" cols="0" rows="0" onFocus="if(this.value==this.defaultValue)this.value='';" onBlur="if(this.value=='')this.value=this.defaultValue;">Your Message *</textarea> 
     <input class="input-btn" type="submit" value="send message"> 
     </div> 

Вот код PHP, который я использую для извлечения данных из формы.

<html> 
<body> 
<?php 
$errors = ''; 
$myemail = '[email protected]'; 
if(empty($_POST['name']) || 
empty($_POST['email']) || 
empty($_POST['message'])) 
{ 
$errors .= "\n Error: all fields are required"; 
} 
$name = $_POST['name']; 
$email_address = $_POST['email']; 
$message = $_POST['message']; 
if (!preg_match(
"/ ^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", 
$email_address)) 
{ 
$errors .= "\n Error: Invalid email address"; 
} 
if(empty($errors)) 
{ 
$to = '$myemail'; 
$email_subject = "Contact form submission: $name"; 
$email_body = "You have received a new message. ". 
    " Here are the details:\n Name: $name \n ". 
    "Email: $email_address\n Message \n $message"; 
$headers = "From: $myemail\n"; 
$headers .= "Reply-To: $email_address"; 
mail($to,$email_subject,$email_body,$headers); 
//redirect to the 'thank you' page 
header('Location: contact-form-thank-you.html'); 
} 
?> 

Проблема в том, что после ввода данных в форму она не будет продолжена.

+2

У вас должен быть тег формы открытия и закрытия, например, '

VipindasKS

ответ

1

Измените разметку так, чтобы она была <form>, а не <div> и избавилась от точки с запятой.

<form class="form" action="mail.php" method="post"> 
    ... 
</form> 
+0

Решил мою проблему. Большое спасибо :) –

Смежные вопросы