2015-02-06 4 views
0

Я создал php для отправки своих сообщений с веб-сайта на адрес электронной почты клиентов. Но как только письмо отправлено, я получаю пустое электронное письмо. Я пытался использовать. $ _ Post ['name']. для вызова поля, и я попробовал .name.PHP-форма отправки пустого письма

Я использую bootstrap для создания формы.

<form class="email" method="post" action="mailer.php"> 
       <div class="form-group col-md-6"> 
       <label for="name">Full Name</label> 
       <input type="text" class="form-control" id="name" name="name" placeholder="Enter Your Full Name"> 
       </div> 
       <div class="form-group col-md-6"> 
       <label for="telephone">Telephone</label> 
       <input type="text" class="form-control" id="telephone" name="telephone" placeholder="Enter Your Telephone Number"> 
       </div> 
       <div class="form-group col-md-6"> 
       <label for="postcode">Post Code</label> 
       <input type="text" class="form-control" id="postcode" name="postcode" placeholder="Postcode"> 
       </div> 
       <div class="form-group col-md-6"> 
       <label for="email">Email</label> 
       <input type="email" class="form-control" id="email" name="email" placeholder="Enter Your Email"> 
       </div> 
       <div class="form-group col-md-6"> 
       <label for="laptopmake">Make</label> 
       <input type="text" class="form-control" id="laptopmake" name="laptopmake" placeholder="Enter Your Laptop Make(HP,Toshiba"> 
       </div> 
       <div class="form-group col-md-6"> 
       <label for="laptopmodel">Model</label> 
       <input type="text" class="form-control" id="laptopmodel" name="laptopmodel" placeholder="Enter Your Laptop Model Number"> 
       </div> 
       <div class="form-group col-md-12"> 
       <label for="faultdescription">Fault Description</label> 
        <textarea class="form-control" rows="4" id="faultdescription" name="faultdescription" placeholder="Describe Your Laptop Fault"></textarea> 
       </div> 
       <div class="form-group col-md-6"> 
       <button type="submit" class="btn btn-warning"> 
         Send Message 
       </button> 
       </div> 
     </form> 

Это почтовая программа PHP.

<?php 

error_reporting(E_ALL); ini_set('display_errors', 1); 
print_r($_POST) 

    $name = $_POST['name']; 
    $telephone = $_POST['telephone']; 
    $email = $_POST['email']; 
    $postcode = $_POST['postcode']; 
    $laptopmake = $_POST['laptopmake']; 
    $laptopmodel = $_POST['laptopmodel']; 
    $faultdescription = $_POST ['faultdescription']; 
    $message =$_POST['message']; 



    $to = "[email protected]"; 
    $subject="Laptop Repair Request!"; 
    $body = 'Name:' .$name. "\n\n"; 'Email:' .$email. "\n\n" ;'Postcode:' .$postcode. "\n\n"; 'Message:' .$message . "\n\n";'Telephone:' .$telephone. "\n\n"; 'Laptop Make:' .$laptopmake. "\n\n"; 'Laptop Model:' .$laptopmodel. "\n\n"; 'Fault Description:' .$faultdescription. "\n\n"; mail($to, $subject,$body, $from); 
    echo "Your Message has been sent"; 


    header('Location: index.html'); 
exit(); 


/* Functions we used */ 
function check_input($data, $problem=''){ 
$data = trim($data); 
$data = stripslashes($data); 
$data = htmlspecialchars($data); 
if ($problem && strlen($data) == 0) 
{ 
show_error($problem); 
} 
return $data; 
}; 

function show_error($myError) 
{ 
?> 
<html> 
<body> 

<p>Please correct the following error:</p> 
<strong><?php echo $myError; ?></strong> 
<p>Hit the back button and try again</p> 

</body> 
</html> 
<?php 
exit(); 
} 
?> 

Обновление версии

+1

Добавить отчеты об ошибках в верхней части файла (ов) сразу после открытия '

+2

Удалите 'isset' и включите' error_reporting'. Почти ни одно из полей формы не имеет имени 'name ='. – mario

+0

В верхней части моей головы, по-видимому, почему-то isset ($ _ POST ['submit'] оценивает значение false. Может быть, эта кнопка нуждается в ID? – mrunion

ответ

0

Используйте вместо "" ";" для сбора информации. Изменение строки с началом «$» в тело:

$body = 'Name:' .$name. "\n\n" . 'Email:' .$email. "\n\n" . 'Postcode:' .$postcode. "\n\n". 'Message:' .$message . "\n\n" . 'Telephone:' .$telephone. "\n\n" . 'Laptop Make:' .$laptopmake. "\n\n" . 'Laptop Model:' .$laptopmodel. "\n\n" . 'Fault Description:' .$faultdescription. "\n\n"; 
mail($to, $subject,$body, $email); 
+0

Все еще пусто. все, что я получаю, это имена полей, а не значения –

+0

Проверьте функцию «почта». – EngineerCoder

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