Рад приветствовать всех новичков а так же рыцарей-джедаев php!) Я начинающий(или не очень) верстальщик, и столкнулся с самой явной проблемой - написания скрипта на языке php. Так вот, мне нужна ваша помощь: Вот код самой формы, со стилями, Код (PHP): <form class="lv-order-form lv-order-form-css" data-form-number="1" id="lv-form" action="action.php" method="post" data-validation-by-alert="1" onsubmit="if(this.name.value==''){alert('Введите Ваше имя!');return false}if(this.phone.value==''){alert('Введите Ваш номер телефона!');return false}return true;" > <div class="lv-move" data-position="before" data-form="1" data-field="fio"> <h3 class="asdasdsa">Оставить заявку</h3> </div> <div class="lv-row lv-row-fio lv-row-input " data-name="fio" data-required=""> <div class="lv-field"> <input data-label="ФИО" data-required="" data-form-id="" id="lv-form-fio" class="lv-input-fio -metrika-nokeys" maxlength="255" name="name" type="text" placeholder="ФИО *" required> </div> </div> <div class="lv-row lv-row-phone lv-row-input " data-name="phone" data-required="1"> <div class="lv-field"><input data-label="Телефон" data-required="1" data-form-id="" id="lv-form-phone" class="lv-input-phone -metrika-nokeys" maxlength="25" name="phone" type="text" placeholder="Телефон *" required></div> </div> <div class="lv-row lv-row-additional1 lv-row-input " data-name="additional1" data-required=""> </div> <input id="com" name="comment" type="hidden" value=""/> <div class="lv-form-submit"><input class="lv-order-button -metrika-nokeys" type="submit" name="yt0" value="Заказать"></div> </form> но мне нужен файлик action.php для отправки формы на мейл. Помогите! Думаю это не составит труда. Да пребудет с вами Сила!) Добавлено спустя 1 минуту 55 секунд: Учитывая опечатку в заголовке, мне таки это почти со "скрипом" удалось. Но почта так и не долетела...( Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, любая другая разметка, результаты array/object dump и т. д.
Это раздел для новичков. Тут подсказывают, но не делают вместо вас. Покажите свои попытки отправить письмо, может кто найдёт ошибку или просто подскажет.
Вот моя жалкая попытка.) Код (PHP): <?php $to = 'poker.luzik@gmail.com'; $from = "=?UTF-8?b?" . $_POST['name'] . "?="; $subject = "=?UTF-8?b?" . $_POST['phone'] . "?="; $mail_body = "Поступил новый ответ от формы обратной связи.\r\nАвтор оставил такие данные:\r\n"; //Формируем текст сообщения $header = "MIME-Version: 1.0\n"; $header .= "Content-Type: text/plain; charset=UTF-8\n"; //Отправка сообщения if(mail($to, $subject, $mail_body, $header)){ $message = '<div class="error">Ваше сообщение успешно отправлено!</div>'; //Очищаем форму обратной связи $validator->reset_postdata(); } else{ $message = '<div class="error">Ваше сообщение не отправлено!</div>'; } ?> Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, любая другая разметка, результаты array/object dump и т. д.
откуда вы взяли эту строчку, вообще не понимаю Код (PHP): $validator->reset_postdata(); Но вообще оно криво, но работает. Письма вообще не доходят?
Именно. Если, можешь, помоги. Покажи ошибки для исправления. Мне не нужно чего-то вычурного - главное данные на мейл) Спасибо.
Да скрипт-то работает. Вопрос в том, разрешена ли функция mail() на сервере. И есть ли почтовая служба вообще. Попробуйте уточнить это у своей техподдержки Добавлено спустя 3 минуты 21 секунду: А ещё есть вариант, что письма отправляются, но их не пропускает фильтр получателя. Код (PHP): <?php $to = 'poker.luzik@gmail.com'; $from = "=?UTF-8?b?" . $_POST['name'] . "?="; $subject = "=?UTF-8?b?" . $_POST['phone'] . "?="; $mail_body = "Поступил новый ответ от формы обратной связи.\r\nАвтор оставил такие данные:\r\n"; //Формируем текст сообщения $header = "MIME-Version: 1.0\n"; $header .= "Content-Type: text/plain; charset=UTF-8\n"; //Отправка сообщения if(mail($to, $subject, $mail_body, $header)){ echo '<div class="error">Ваше сообщение успешно отправлено!</div>'; } else{ echo '<div class="error">Ваше сообщение не отправлено!</div>'; } ?> что так напишет?
Тогда да, проблема в этом. Стандартно там стоит заглушка. в XAMPP надо настроить почтовый сервер. Там он называется, вроде бы, Mercury. Погуглите на эту тему.
Сейчас вот заглушку настроил. Буду проверять. Отпишу) Добавлено спустя 12 минут 27 секунд: з.ы. я только что убунту сломал)хах) При настройке заглушки присвоил себе всю системную папку etc/ и терь не вернуть) Ну это уже другая история)
Что ж вы не написали, что Linux у вас сразу. Вам бы подсказали. Там же есть родные почтовые сервера, странно, что в комлекте для Linux у XAMPP-а нет настроек хотя бы на sendmail. http://habrahabr.ru/post/136735/ - я недавно по этой статье настраивал