Ребят. Всем привет. В итоге ситуация такая. вот мой сайт: http://remkachestvo.ru У меня на сайте 2 формы. 1) order.php Форма заявки 2) send.php Форма обратной связи Вроде как написал их правильно. Но, сообщения приходят с вероятностью 15%. И то если приходят то через минут 20. Что делать? помогите. Вот форма заявки: Код (Text): <?php if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['phone'])) {$phone = $_POST['phone'];} if (isset($_POST['after'])) {$after = $_POST['after'];} if (isset($_POST['before'])) {$before = $_POST['before'];} if (isset($_POST['work'])) {$work = $_POST['work'];} if (isset($_POST['email'])) {$email = $_POST['email'];} if (isset($_POST['quest'])) {$quest = $_POST['quest'];} $to = "remkachestvo@mail.ru"; $headers = "Content-type: text/html;charset=utf-8 \r\nFrom:$email"; $subject = "Заявка с сайта «RemKachestvo.Ru»"; $message = "<p>Заявка с сайта «RemKachestvo.Ru»</p> \n<p><strong>Имя:</strong> $name</p> \n<p><strong>Тел:</strong> $phone</p> \n<p><strong>Дата начала работы:</strong> $after</p> \n<p><strong>Дата окончания работы:</strong> $before</p> \n<p><strong>Нужная услуга:</strong> $work</p> \n<p><strong>E-mail:</strong> $email</p> \n<p><strong>Вопрос:</strong> $quest</p>"; $send = mail ($to, $subject, $message, $headers); header( "Location: http://remkachestvo.ru/send.html" ); ?> Вот форма обратной связи: Код (Text): <?php if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['email'])) {$email = $_POST['email'];} if (isset($_POST['quest'])) {$quest = $_POST['quest'];} $to = "remkachestvo@mail.ru"; $headers = "Content-type: text/html;charset=utf-8 \r\nFrom:$email"; $subject = "Заявка с сайта «RemKachestvo.Ru»"; $message = "<p>Сообщение от « RemKachestvo.Ru »</p> \n<p><strong>Имя:</strong> $name</p> \n<p><strong>Email:</strong> $email</p> \n<p><strong>Вопрос:</strong> $quest</p>"; $send = mail ($to, $subject, $message, $headers); header( "Location: http://remkachestvo.ru/send.html" ); ?>
формы сюда исходниками, а не архивом. по теме - раз приходит значит все работает. если через 20 минут то это больше похоже на попадание в серый список вашего почтового транслятора - его не любят. а вероятность 15% это скорее всего вообще ваш почтовый транслятор признается спамом-источником.
выложил формы. Скажите где ошибка? Добавлено спустя 51 секунду: выложил формы. Скажите где ошибка? Добавлено спустя 1 минуту 3 секунды: И что мне теперь делать? как исправить это? Дайте дельный совет. Прошу.
логические ошибки есть вроде необъявленных переменных: Код (Text): if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['email'])) {$email = $_POST['email'];} if (isset($_POST['quest'])) {$quest = $_POST['quest'];} - я могу ничего не вводить и письмо все равно уйдет Код (Text): From:$email - на месте почтового сервера я бы не отправлял такие письма потому что они не от его имени. еще раз. почта ходит - всё у вас работает. поправьте логику - может быть из-за нее часть писем не долетает. и отсылайте почту от имени вашего почтового сервера, а не человека который форму заполнил - часть серверов с удовольствием отсечет ваше письмо как подделку. изобразите адрес относящийся к вашему сайту. в остальном вроде текст письма не должен сильно надоедать вашему спам-фильтру. ну или обучите его, что вся почта приходящая с сайта это не спам.
вы посмотрите пока по этому разделу форума - достаточно частое явление и постоянно одно и то же повторять не хочется. если возникнут сложности - пишите, обязательно направим ваши мысли в нужное русло.
Сделал вот так: Код (Text): <?php $name = $_REQUEST['name']; $phone = $_REQUEST['phone']; $after = $_REQUEST['after']; $before = $_REQUEST['before']; $work = $_REQUEST['work']; $email = $_REQUEST['email']; $quest = $_REQUEST['quest']; $headers= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html;charset=utf-8 \r\nFrom:$email"; $message = "<p>Заявка с сайта «RemKachestvo.Ru»</p> \n<p><strong>Имя:</strong> $name</p> \n<p><strong>Тел:</strong> $phone</p> \n<p><strong>Дата начала работы:</strong> $after</p> \n<p><strong>Дата окончания работы:</strong> $before</p> \n<p><strong>Нужная услуга:</strong> $work</p> \n<p><strong>E-mail:</strong> $email</p> \n<p><strong>Вопрос:</strong> $quest</p>"; mail( "remkachestvo@mail.ru", "RemKachestvo.Ru", $message, $headers ); header( "Location: http://remkachestvo.ru/send.html" ); ?> И вроде как нормально работает.. Вот только теперь сообщения приходят сразу но не всегда. Тоесть как я понял не все отсылаются... Как это исправить? Добавлено спустя 4 минуты 14 секунд: Может ли это быть из-за того что у меня метод POST ?? У меня вот так сейчас: <form action="/order.php" method="post" id="contact-form">