Почему выдает пустую почту после _POST["email"]?

Я работаю с Интеркассой и у меня есть форма в которой нужно указать Email и потом нажать на кнопку "Купить".

Вот код формы:
<form id="form" name="payment" method="POST" action="ссылка на Интеркассу" enctype="utf-8">
    <input type="hidden" name="ik_co_id" value="VALUE"/>
    <input type="hidden" name="ik_pm_no" value="<?=time()?>"/>
    <input type="hidden" name="ik_am" value="149.99"/>
    <input type="hidden" name="ik_cur" value="RUB"/>
    <input type="hidden" name="ik_desc" value="Месячная подписка"/>
    <section>
        <p class="info"><strong>Укажите email на который вы хотите получать задачи</strong></p>
        <p><input class="mail" data-stripe="email" id="email" type="email" name="ik_cli" placeholder="Эелектронная почта" value="Почта"></p>
    </section>
    <button class="buy" type="submit" id="submit">
        <strong>Купить подписку (149.99 )</strong>
    </button>
</form>


Код файла обработки платежа:
$arr = array(
	"Статус: " => "Новая покупка",
	"Email: " => $_POST["ik_cli"],
	"IP:" => $ip,
	"Сумма:" => $_POST["ik_am"]
);


И когда я фильтрую этот массив и отправляю его куда-нибудь, Email всегда пустой!

Статус: Новая покупка
Email:
IP: 1.1.1.1
Сумма: 149.99


Это очень странно, ведь не так давно все работало, но после того как я что-то там изменил (уже не помню что), работать перестало. Я пробовал вместо ik_cli подставлять другие значения, например ik_am и оно не было пустым. Проблема именно в том, что это почта.

Пожалуйста, помогите решить это проблемку!
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
@RTFMaster
РукоJOB
Попробуйте в input email добавить закрывающий слеш (без "/>" php ожидает "</input>"). value лучше убрать или оставить пустым + добавить атрибут pattern и required. Паттерн на поле легко гуглится.

<p><input class="mail" data-stripe="email" id="email" type="email" name="ik_cli" placeholder="Электронная почта" pattern="сюда_вписать_регулярку"  required /></p>


Как вариант: Вместо паттерна в самом поле можно написать скрипт-листнер, который будет слушать submit и делать проверку поля(-ей).

Upd: пока дебажите код этот момент можно опустить.

Из обсуждения выше тоже посоветовал бы сначала форму отправлять себе в обработчик, а потом обращаться в api интеркассы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ApXNTekToP
@ApXNTekToP
Недопрограммист
Попробуй в value подставить, почту формата test@gmail.com
Так как ты просишь пользователя указать email, параметр value не должен указываться. Точно сказать не могу, не тестил.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы