@xishnik-13

Скрипт php отправки почты. что не так?

Уже ни чего не понимаю((((
есть форма
<form action="php/form.php" target="_blank" method="post">
<input type="text" name="u_name" placeholder="Ваше имя" required pattern="[a-zA-Zа-яА-Я]+">
<input type="tel" name="u_tel" placeholder="Ваш телефон" required pattern="[^a-zA-Zа-яА-Я]+">
<input type="submit" value="Отправить заявку">
</form>

есть php обработчик
<?php 
	$name = $_POST[u_name];
	$tel = $_POST[u_tel];
    $name = htmlspecialchars($name);
    $name = urldecode($name);
    $name = trim($name);
    $tel = htmlspecialchars($tel);
    $tel = urldecode($tel);
    $tel = trim($tel);
    $to = 'xishnik@bk.ru';
	$subject = "Заявка с сайта"; 
	$message = " Имя: $name \nТелефон: $tel";
 	mail ($to, $subject, $message);
    if (mail ($to, $subject, $message)) {
        echo "ДА";
    }
    else if (!mail ($to, $subject, $message)) {
        echo "НЕТ";
    }
 ?>

пока тестирую на локалхосте (оперсервер) все нормально. письма сохраняет в папку mail.
онлайн тестировщики php ошибок не находят.
перед тем как отдать скрипт другу, тестирую на интернет хостинге.... и письмо не уходит, т.е. отрабатывает стока
else if (!mail ($to, $subject, $message)) {
        echo "НЕТ";
    }

Вопрос....проблема в интернет хостинге, или в скрипте?
Где можно проверить скрипт, чтоб точно знать, что он работает, может есть какие-то бесплатные хостинги, куда можно залить и проверить работоспособность.
Мне просто важно понимать, что если у человека будет ошибка, то это не мой косяк, а надо крутить настройки самого хоста....
Простите, может подобные вопросы и были.... но мною уже перерыт весь интернет.

Главный вопрос скорее в том, есть ли какой-то сервис, или бесплатный хост где можно было бы тестировать свои php. т.к. на сервер заливать буду не я, мне важно иметь уверенность, что косяк не в моих крякозябрах))))))

Всем отозвавшимся, большое спасибо!

З.Ы.
даже тем, кто меня назовет чайником и ламером ;-)
  • Вопрос задан
  • 122 просмотра
Решения вопроса 1
zkrvndm
@zkrvndm
Архитектор решений
Вы талант. По порядку:
1. У вас переменные не экранированы, правильно будет вот: $_POST["u_name"]
2. Функцию майл надо вызывать один раз, вы же вызывайте три раза
3. Результат работы функции майл надо записать в переменную и уже в зависимости от результата выдавать ответ

P. S. Косяк с вашей стороны.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы