Pavlusha
@Pavlusha
2руререур

Ошибка в php при отправке почты как убрать?

Имеем код, для отправки имени и номера телефона в обратную связь, но почему-то на почту не приходит ничего, на кнопке ok появляется после ввода данных

<?php

if (!empty($_POST['submit'])) {

# Готовим данные
$name = substr(htmlspecialchars(trim($_POST['name'])), 0, 100);
$tel = substr(htmlspecialchars(trim($_POST['tel'])), 0, 15);
$title = "Новая заявка с сайта кухни";
$mess = "Поступила новая заявка с сайта. Имя: {$name}, Телефон: {$tel}";

# кому отправляем и от кого
$to = 'pochta@mail.ru';
$from='pochta@mail.ru';

# Отправляем на почту
mail($to, $title, $mess, 'From:'.$from);

# Уведомляем и редиректим обратно
echo "";
echo "";
}
?>

ругается на if (!empty($_POST['submit'])) { пробовал так if ($_POST["submit"]) { и даже так if (isset($_POST['submit']))
  • Вопрос задан
  • 309 просмотров
Пригласить эксперта
Ответы на вопрос 2
rpsv
@rpsv
делай либо хорошо, либо никак
А на что ругается то, ошибка какая?
Что должно приходить в POST?
Если проверить нужно просто на true, то достаточно:
if ($_POST['submit'])

---

<?php

if ($_POST) {
	$name = substr(htmlspecialchars(trim($_POST['name'])), 0, 100); 
	$tel = substr(htmlspecialchars(trim($_POST['tel'])), 0, 15); 

	if ($name && $tel) {
		$title = "Новая заявка с сайта кухни";
		$mess = "Поступила новая заявка с сайта. Имя: {$name}, Телефон: {$tel}";

		# кому отправляем и от кого
		$to = 'pochta@mail.ru'; 
		$from='pochta@mail.ru'; 

		# Отправляем на почту
		mail($to, $title, $mess, 'From:'.$from); 

		# Уведомляем и редиректим обратно
		echo "";
		echo "";
	}
	else {
		echo "Поля не заполнены...";
	}
}
Ответ написан
Pavlusha
@Pavlusha Автор вопроса
2руререур
вот что удалось выяснить

Здравствуйте! Заменили строку
if ($_POST["submit"]) {

на

if (isset($_POST['submit'])) {

Теперь наблюдаются другие ошибки
[Tue Aug 22 09:12:48 2017] [error] [client 178.159.39.28] PHP Notice: Undefined index: name in /var/www/user150936/data/www/abika-nsk.ru/mail.php on line 5
[Tue Aug 22 09:12:48 2017] [error] [client 178.159.39.28] PHP Notice: Undefined index: tel in /var/www/user150936/data/www/abika-nsk.ru/mail.php on line 6

Как мы видим, переменные name и tel у Вас нигде не объявлены.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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