За последние 24 часа нас посетил 17101 программист и 1835 роботов. Сейчас ищут 1717 программистов ...

Не отправляется письмо заказа с сайта на почту

Тема в разделе "Прочие вопросы по PHP", создана пользователем kaylanger, 4 дек 2011.

  1. kaylanger

    kaylanger Активный пользователь

    С нами с:
    10 ноя 2011
    Сообщения:
    9
    Симпатии:
    0
    Доброго времени суток! Хочу обратиться к вам за помощью. На сайте есть пункт "Сделать заказ" (доставка пиццы, роллов и т.п.). Заполнив форму и нажав кнопку "ПОДТВЕРДИТЬ ЗАКАЗ", письмо должно оправиться на почтовый ящик kaylanger@mail.ru. Но по какой то причине это не происходит. Подскажите, пожалуйста, как мне решить эту проблему и в чем причина?

    Вот форма заполнения письма:

    HTML:
    1. <form action="action.php" method="post" id="form1">
    2.                <label><input type="checkbox" name="order1" value="roll1"><img src="images/logo_mess.png">ролл1</label>
    3.                <label><input type="checkbox" name="order2" value="roll2"><img src="images/logo_mess.png">ролл2<br><br></label>
    4.                
    5.                 <label>Фамилия Имя Отчество<br><input type="text" name="name1" size="55"><br><font class="style1">Пример: Иванов Иван Иванович</font></label><br><br>
    6.                 <label>Контактный телефон<br><input  type="text" name="phone" size="55"><br>
    7.                 <font class="style1">Пример: 8-987-654-32-10 </font></label><br><br>
    8.                 Время доставки:<br>
    9.                 <select name="time">
    10.                 <option value="10.00-11.00">10.00-11.00</option>
    11.                 <option value="11.00-12.00">11.00-12.00</option>
    12.                 <option value="12.00-13.00">12.00-13.00</option>
    13.                 <option value="13.00-14.00">13.00-14.00</option>
    14.                 <option value="14.00-15.00">14.00-15.00</option>
    15.                 <option value="15.00-16.00">15.00-16.00</option>
    16.                 <option value="16.00-17.00">16.00-17.00</option>
    17.                 <option value="17.00-18.00">17.00-18.00</option>
    18.                 <option value="18.00-19.00">18.00-19.00</option>
    19.                 <option value="19.00-20.00">19.00-20.00</option>
    20.                 <option value="20.00-21.00">20.00-21.00</option>
    21.                 <option value="21.00-22.00">21.00-22.00</option>
    22.                 <option value="22.00-23.00">22.00-23.00</option>
    23.                 </select><br><font class="style1">Выбирите удобное для Вас время доставки</font><br><br>
    24.                 <label>Адрес доставки:<br><textarea name="adress" cols="50" rows="4"></textarea><br><font class="style1">Пример: ул. Советская, д.1, кв.1 </font></label><br><br>
    25.                
    26.                 <label><input type="reset" name="reset1" value="Очистить форму"></label>
    27.                 <label><input type="submit" name="submit1" value="ПОДТВЕРДИТЬ ЗАКАЗ"></label>
    28.                
    29.                 </form>
    Вот PHP скрипт

    PHP:
    1. <?php
    2.                 $orders = array(
    3. 'order1'=>'Ролл1',
    4. 'order2'=>'Ролл2'
    5. );
    6.                 if (isset($_POST['name1'])) {$name1 = $_POST['name1'];}
    7. if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
    8. if (isset($_POST['adress'])) {$adress = $_POST['adress'];}
    9. if (empty($name1))
    10. {
    11. echo "<b class=style5>Не указано имя!<p>";
    12. echo "<a href=order.htm class=style5>Вернуться к заполнению формы заказа</a>";
    13. }
    14. if (empty($phone))
    15. {
    16. echo "<b class=style5>Не указан телефон!<p>";
    17. echo "<a href=order.htm class=style5>Вернуться к заполнению формы заказа</a>";
    18. }
    19. if (empty($adress))
    20. {
    21. echo "<b class=style5>Не указан адрес!<p>";
    22. echo "<a href=order.htm class=style5>Вернуться к заполнению формы заказа</a>";
    23. }
    24. else
    25. echo "<font class=style5>Получен заказ от: </font>".$_POST["name1"];
    26. echo "<br><br><font class=style5>Контактный телефон: </font>".$_POST["phone"];
    27. echo "<br><br><font class=style5>Адрес: </font>".$_POST["adress"];
    28. echo "<br><br><font class=style5>Время доставки: </font>".$_POST["time"];
    29. $order='';
    30. foreach($orders as $id=>$title){
    31.     if(isset($_POST[$id]))
    32.     $orders.="\n{$title}";
    33. }
    34. if(isset($_POST['order1'])) echo "<br><br><font class=style5>Ролл1</font>";
    35. if(isset($_POST['order2'])) echo "<br><br><font class=style5>Ролл2</font>";
    36. if($_POST['submit']) {
    37.         // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и  substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменной $_POST['mess'] все аналогично
    38.         $name1 = htmlspecialchars(substr(trim($_POST['name1'])), 0, 100);
    39.         $phone = htmlspecialchars(substr(trim($_POST['phone'])), 0, 100);
    40.         $adress = htmlspecialchars(substr(trim($_POST['adress'])), 0, 1000);
    41. $to = "kaylanger@mail.ru"; /*УКАЗАТЬ СВОЙ АДРЕС!*/
    42. $headers = "Content-type: text/plain; charset = utf-8";
    43. $subject = "Сообщение с вашего сайта";
    44. $message = "Имя пославшего: $name1 \nТелефон: $phone \nАдрес:: $adress\nМеню Заказа:: $order";
    45. $verify = mail ($to, $subject, $message, $headers);}
    46. if ($verify === true)
    47. {
    48. echo "<b class=style5>Спасибо! Скоро Вам перезвонят для подтверждения заказа.<p>";
    49. echo "<a href=index.htm class=style5>Нажмите,</a> чтобы вернуться на главную страницу";
    50. }
    51. else
    52. {
    53. echo "<br><br><font class=style5>Ошибка. Сообщение не отправлено!";
    54. }
    55. ?>
    Заранее, спасибо!
     
  2. metadon

    metadon Активный пользователь

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    Ничего не работает! Что делать??? Поиск ошибок и отладка: http://phpfaq.ru/debug