2013-05-10 5 views
0

Когда я меняю адрес электронной почты на свой личный адрес hotmail, появляется сообщение - хотя оно находится в папке со спамом. Но когда я меняю это на электронную почту клиента, сообщение не появляется вообще. Кто-нибудь знает, как я могу это исправить?Почему контактная информация не отправляется клиенту?

Это PHP для формы:

<?php 
if(isset($_POST['submit'])) { 
$name = $_POST['name']; 
$address = $_POST['address']; 
$number = $_POST['number']; 
$email = $_POST['email']; 
$message = $_POST['message']; 
$subject = 'Message from Reef Cleaning solutions website'; 
$to = '[email protected]'; 

if (empty($name) || empty($address) || empty($number) || empty($email) || empty($subject) || empty($message)) { 
    if (empty($name)) 
     $error['name'] = "Please enter your Full Name"; 
    if (empty($address)) 
     $error['address'] = "Please enter your address"; 
    if (empty($number)) 
     $error['number'] = "Please enter a contact number"; 
    if (empty($email)) 
     $error['email'] = "Please enter a valid Email Address"; 
    if (empty($message)) 
     $error['message'] = "Please write a message, enquiries or other concerns above"; 
} 
else { //if not empty 
    $body = " 
    Name: $name\r\n 
    Address: $address\r\n 
    Number: $number\r\n 
    Email: $email\r\n 
    Message: $message 
    "; 

    $headers="From: {$email}\r\nReply-To: {$email}"; //create headers for email 

    if(mail($to,$subject,$body,$headers)) 
    { 
     $success = "mail has been sent"; 
    } 
    else 
    { 
    echo "error during sending mail"; 
    } 
} 
} 
?> 

Это HTML

<form method="POST"> 
     <table border="1"> 
      <tr> 
      <td><label for="name" class="g">Name</label></td> 
      <td><input id="name" name="name" type="text" autofocus required /></td> 
      </tr> 

      <tr> 
      <td><label for="address" class="g">Address</label></td> 
      <td><textarea rows="3" id="address" name="address" cols="50"></textarea></td> 
      </tr> 

      <tr> 
      <td><label for="number" class="g">Contact number</label></td> 
      <td><input id="number" name="number" type="text" autofocus required /></td> 
      </tr> 

      <tr> 
      <td><label for="email" class="g">Email</label></td> 
      <td><input id="email" name="email" type="text" placeholder="[email protected]" autofocus required /></td> 
      </tr> 

      <tr> 
      <td><label for="message" class="g">Enquiry</label></td> 
      <td><textarea rows="3" id="message" name="message" required cols="50"></textarea></td> 
      </tr> 
      </table> 
      <input type="submit" value="Submit" name="submit" /> 

      <div id="message-sent"> 
      <?php 
      if ($success) { 
       echo $success; 
      } 
      ?> 
      </div> 

      </form> 
+3

Если он отображается в вашей папке с спамом, он отправляется; поэтому его проблема с клиентской стороной – Ryan

+0

Я думаю, он говорит, что если он отправит электронное письмо на учетную запись hotmail, письмо будет отправлено и отправлено в папку спама в hotmail. Если он отправит электронное письмо на адрес [email protected], письмо не будет отправлено. Но .. вы получаете какую-либо ошибку? Я имею в виду, что письмо отправляется и отклоняется вашим клиентом или почта вообще не отправляется? можете ли вы хотя бы обнаружить это? Форма HTML хороша, даже код кажется хорошим. – Madthew

+0

Я использую outitgoes.com для проверки адреса электронной почты клиента, и ничего не отображается в этой папке «Входящие» или «Спам». Однако, когда я тестирую его на своем личном hotmail, он появляется в моем письме. –

ответ

0

Если вы получите сообщение на адрес электронной почты, это не проблема, из кода PHP, потому что он успешно отправить mail.

Итак, правильно ли настроен адрес электронной почты? Можете ли вы отправить электронное письмо на этот адрес своим персональным адресом?

Вы говорите, что это сообщение считается спамом на вашем персональном адресе, возможно, это одно и то же для этого другого адреса, но сообщение не попадает в папку «спам», но не разрешено входить в почтовый ящик.

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