Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не отправляется или не получает (https://javascript.ru/forum/misc/69513-ne-otpravlyaetsya-ili-ne-poluchaet.html)

gko11 29.06.2017 18:13

Да дело то не в почте или скрипте, дело где-то на html странице, т.к. я вместо этой формы ставил рабочую и о чудо она тоже не работала...
Но как проблема может быть в html?
Ставил без скриптов и css эту страницу и рабочую форму, не отправляло!

laimas 29.06.2017 18:20

Цитата:

Сообщение от gko11
Да дело то не в почте или скрипте

Уверены? Причем тут HTML? Не гадайте на кофейной гуще, открывайте отладчик браузера, проверяйте сеть, XHR запросы, по запросу http://search-apteki.ru/1.php данные как и положено отправляются. Если бы отправки не было, сервер вообще бы не ответил.

До отправки почты лень написать

if($_POST) exit(print_r($_POST, 1));

чтобы удостоверится что север получает данные?

Хотите получить помощь, значит проверять а не гадать.

gko11 29.06.2017 18:26

Дак всмысле гадать? Если html форма, в которой указан метод пост и ссылка на обработчик, аналогично не работает, тут стоит грешить тогда на обработчик, я его проверил на голой форме и он работает, тогда в чём косяк? В форме? Я вставил голую форму за место той и она тоже не работала, отключив js и стили она аналогично не работала, остаётся 2 проблемы это хостинг(Но работает он исправно) и html.
Я не гадаю на кофейной гуще, я перепробовал все варианты, и они не работают

laimas 29.06.2017 18:29

Вот это другое дело, работает ваш код по http://search-apteki.ru/1.php. То есть все Ок. Остается посмотреть внимательно на код формы моего примера и на свой. В моем у полей есть имена, ID не нужны. Поля сериализует метод jQ, а если у поля формы нет имени, то на сервер оно отправляться не будет. Приведите в порядок код своей формы, выкинув из нее то, о чем говорилось и все будет работать.

laimas 29.06.2017 18:35

На реальной странице, два раза подключается jQuery - исправить. Либо со своего сайта, либо с Гугла.

laimas 29.06.2017 18:37

Да, и оператор ваш по указанному мной номеру телефона "а" связаться вряд ли сможет.

gko11 29.06.2017 18:49

<form method="POST" action="http://search-apteki.ru/sendmail/index.php">
                        <div class="form-group">
                        <input class="form-control" required placeholder="Ваше имя" value="" name="req_name" type="text">
                        </div>
                        <div class="form-group">
                        <input class="form-control" placeholder="Интересующий препарат" name="req_drug" value="" type="text">
                        </div>
                        <div class="form-group">
                        <input class="form-control" required placeholder="Телефон" name="req_phone" value="" type="text">
                        </div>
                        <div class="form-group">
                        <input class="form-control" placeholder="Комментарий" name="req_comment" value="" type="text">
                        </div>
                        <div class="clearfix"></div>
                        <button type="submit" class="btn btn-request btn-block">Отправить</button>
                    </form>

На файл перенаправляет, выводит что сообщение отправлено, но оно не отправляется....
Хотя ещё пол часа назад отправлялось

gko11 29.06.2017 19:01

Ещё один пример, попробуй отправит данные, увидишь что получил php скрипт http://search-apteki.ru/1.php

laimas 29.06.2017 19:07

Мне что еще раз код написать или достаточно для понимания?

Я разве это придумал в вашем коде на сервере?

$name = $_POST['name'];
$drug = $_POST['drug'];
$phone = $_POST['phone'];
......

Нет. Это я согласно этого в своем коде формы именовал так поля ее: name, drug, ....

А у вас что за хрень такая name="req_name" и т.д.? Как может север получить в массиве полученном по ключу name, если в нем такого нет? Естественно $name = $_POST['name'] будети равно NULL. Вы же на сервере ничего не проверяете (и на клиенте тоже), не важно что там пришло, пустое ли поле или нет, сразу воткнули в почтовое сообщение и отправили.

gko11 29.06.2017 19:09

Сделал форму как сказанно выше, вернул отправку на js, выходит опять так, форма отправляет, js перехватывает и уходит на php, он отправляет всё на почту, но переменные пустые, вывод, косяк в js
var submitRequestForm = function() {
    $('#bronModal').modal('hide');
    $('#thxModal').modal('show');
    var json = JSON.stringify({
        name: $("#req_name").val(),
        drug: $("#req_drug").val(),
        phone: $("#req_phone").val(),
        comment: $("#req_comment").val()
    });
    $.ajax({
        type: 'post',
        url: 'http://search-apteki.ru/sendmail/index.php', //домен не обязателен, если только не запрос на другой
        data: $(this).serialize(),
        success: function(d) {
            //Обработка ответа сервера, ответ хранится в d
        }
    })

}


Часовой пояс GMT +3, время: 20:45.