Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Отправка писем

, mail [РЕШЕНО]
Shelest
сообщение 25.9.2015, 4:20
Сообщение #1
Стаж: 11 лет

Сообщений: 216
Благодарностей: 86
Полезность: 154

Здравствуйте.
На собственном сайте имеется форма восстановления пароля, при вводе почты и нажатия "Восстановить пароль" выдаётся ответ что письмо было отправлено на почту.
Но письмо так и не доходит, решил проверить логи: /var/mail
Вижу следующее:
mail
From root@domen.ru Thu Sep 24 22:32:01 2015
Return-path: <root@domen.ru>
Envelope-to: root@domen.ru
Delivery-date: Thu, 24 Sep 2015 22:32:01 -0400
Received: from root by domen.ru with local (Exim 4.80)
(envelope-from <root@domen.ru>)
id 1ZfInp-0000sZ-HW
for root@domen.ru; Thu, 24 Sep 2015 22:32:01 -0400
From: root@domen.ru (Cron Daemon)
To: root@domen.ru
Subject: Cron <root@domen> /usr/bin/php /var/www/cron.php
Content-Type: text/plain; charset=ANSI_X3.4-1968
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
Message-Id: <E1ZfInp-0000sZ-HW@domen.ru>
Date: Thu, 24 Sep 2015 22:32:01 -0400

PHP Notice: Undefined variable: aInformation in /var/www/cron.php on line 291
PHP Notice: Undefined variable: aInformation in /var/www/cron.php on line 292
PHP Notice: Undefined variable: aInformation in /var/www/cron.php on line 293

www-data
From MAILER-DAEMON Thu Sep 24 22:31:05 2015
Return-path: <>
Envelope-to: www-data@domen.ru
Delivery-date: Thu, 24 Sep 2015 22:31:05 -0400
Received: from Debian-exim by domen.ru with local (Exim 4.80)
id 1ZfImv-0000sC-Bx
for www-data@domen.ru; Thu, 24 Sep 2015 22:31:05 -0400
X-Failed-Recipients: domen@yandex.ru
Auto-Submitted: auto-replied
From: Mail Delivery System <Mailer-Daemon@domen.ru>
To: www-data@domen.ru
Subject: Mail delivery failed: returning message to sender
Message-Id: <E1ZfImv-0000sC-Bx@domen.ru>
Date: Thu, 24 Sep 2015 22:31:05 -0400

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

domen@yandex.ru
Mailing to remote domains not supported

------ This is a copy of the message, including all the headers. ------

Return-path: <www-data@domen.ru>
Received: from www-data by domen.ru with local (Exim 4.80)
(envelope-from <www-data@domen.ru>)
id 1ZfImv-0000s8-B6
for domen@yandex.ru; Thu, 24 Sep 2015 22:31:05 -0400
To: domen@yandex.ru
Subject: Восстановление забытого пароля
X-PHP-Originating-Script: 0:lospoasswd.php
From: domen.ru <noreply@domen.ru>
Content-type: text/plain; charset=utf-8
Message-Id: <E1ZfImv-0000s8-B6@domen.ru>
Date: Thu, 24 Sep 2015 22:31:05 -0400

Здравствуйте.

Вами был сделан запрос на восстановление забытого пароля.
Для того чтобы восстановить пароль перейдите по ссылке:
http://domen.ru/lostpassword/32cc4a523c1b6...e7d0ef951efc996

Возможен вид помощи как бесплатный так и платный.

Отредактировал: Shelest, - 25.9.2015, 15:20
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя onotole
сообщение 25.9.2015, 9:07
Сообщение #2


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Ща как угадаем код
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
EvilSMS
сообщение 25.9.2015, 9:08
Сообщение #3
Стаж: 10 лет

Сообщений: 1801
Благодарностей: 410
Полезность: < 0

+ такое и у меня было. Может какой-то модуль надо включить в php?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 25.9.2015, 9:20
Сообщение #4
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

Shelest,
ты хоть-бы сам почитал лого.

Цитата
PHP Notice: Undefined variable: aInformation in /var/www/cron.php on line 291


открываешь cron.php, смотришь строки 291-293, исправляешь ошибку.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Shelest
сообщение 25.9.2015, 15:07
Сообщение #5
Стаж: 11 лет

Сообщений: 216
Благодарностей: 86
Полезность: 154

Цитата(onotole @ 25.9.2015, 11:02) *
Ща как угадаем код

Открыть
<?
define('ROOT_DIR',$_SERVER['DOCUMENT_ROOT']);
include(ROOT_DIR."/config/bd.php");
include(ROOT_DIR."/config/settings.php");

if($_POST['email'] != ""){
$login = $_SESSION['name'];
$mail = $_POST['email'];
$STH = $DBH->prepare("SELECT * FROM users WHERE email=:email");
$STH->bindParam(':email', $mail);
$STH->execute();
$row = $STH->fetch(PDO::FETCH_ASSOC);
$email = $row['email'];
$pass = $row['password'];
$logn = $row['login'];
if($email == $mail){
$lostpass = md5(md5($email.$pass.$logn));
$email2 = $mail;
$from = "Name";
$subject = 'Восстановление забытого пароля';
$message = 'Здравствуйте уважаемый пользователь.

Вами был сделан запрос на восстанавление забытого пароля.
Для того чтобы восстановить пароль перейдите по ссылке:
http://'.$settings['domain'].'/lostpassword/'.$lostpass.'

$headers = "From: ".$settings['domain']." <".$settings['email'].">\r\nContent-type: text/plain; charset=utf-8 \r\n";
mail ($email2, $subject, $message, $headers);
session_start();
$_SESSION['mails'] = $mail;
;
}else{echo "К сожалению пользователя с таким адресом не существует!";}
}else{echo "Email не был введён!";}

?>


Цитата(Orty_Hart @ 25.9.2015, 11:16) *
Shelest,
ты хоть-бы сам почитал лого.



открываешь cron.php, смотришь строки 291-293, исправляешь ошибку.

Ошибки исправил, но проблема остаётся актуальной.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Shelest
сообщение 25.9.2015, 16:35
Сообщение #6
Стаж: 11 лет

Сообщений: 216
Благодарностей: 86
Полезность: 154

Здравствуйте.
Имеется страница о восстановлении пароля, при вводе почты и нажатии "Восстановить" письмо должно отправляться на почту.
Письма отправляются только на yandex почты, на mail и google - письма не приходят.
Сам код:
Открыть
<?
define('ROOT_DIR',$_SERVER['DOCUMENT_ROOT']);
include(ROOT_DIR."/config/bd.php");
include(ROOT_DIR."/config/settings.php");

if($_POST['email'] != ""){
$login = $_SESSION['name'];
$mail = $_POST['email'];
$STH = $DBH->prepare("SELECT * FROM users WHERE email=:email");
$STH->bindParam(':email', $mail);
$STH->execute();
$row = $STH->fetch(PDO::FETCH_ASSOC);
$email = $row['email'];
$pass = $row['password'];
$logn = $row['login'];
if($email == $mail){
$lostpass = md5(md5($email.$pass.$logn));
$email2 = $mail;
$from = "Name.Ru";
$subject = 'Восстановление забытого пароля';
$message = 'Здравствуйте уважаемый пользователь.

Вами был сделан запрос на восстанавление забытого пароля.
Для того чтобы восстановить пароль перейдите по ссылке:
http://'.$settings['domain'].'/lostpassword/'.$lostpass.'

С уважением, Name.Ru!';
$headers = "From: ".$settings['domain']." <".$settings['email'].">\r\nContent-type: text/plain; charset=utf-8 \r\n";
mail ($email2, $subject, $message, $headers);
session_start();
$_SESSION['mails'] = $mail;
;
}else{echo "Пользователя с указанной почтой не существует.";}
}else{echo "Введите почту.";}

?>


Отредактировал: Bloo, - 25.9.2015, 20:18
Причина: Выдано устное предупреждение!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AZA
сообщение 25.9.2015, 16:56
Сообщение #7


Стаж: 11 лет

Сообщений: 479
Благодарностей: 173
Полезность: 490

https://pdd.yandex.ru/


*
* puk
*
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Shelest
сообщение 25.9.2015, 17:04
Сообщение #8
Стаж: 11 лет

Сообщений: 216
Благодарностей: 86
Полезность: 154

Цитата(AZA @ 25.9.2015, 18:52) *

Что Вы хотели этим донести?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fullserver
сообщение 25.9.2015, 17:09
Сообщение #9


Иконка группы

Стаж: 11 лет

Сообщений: 5122
Благодарностей: 2100
Полезность: 1394

Shelest, копайте настройки postfix (или sendmail). Была такая же проблема.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя ex3m777
сообщение 25.9.2015, 19:38
Сообщение #10


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

Меценат Меценат

посмотри папку спам..
Я предлагаю настроить smtp, а не использоваться phpmail

Отредактировал: ex3m777, - 25.9.2015, 19:39


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ex3m777
сообщение 25.9.2015, 19:42
Сообщение #11


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

Меценат Меценат

не могу понять.. ты присвоил теме тег "РЕШЕНО", но тем не менее ты пишешь "проблема остаётся актуальной."
smtp пользуйся


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя 3aB}{o3
сообщение 25.9.2015, 20:17
Сообщение #12


Стаж: 18 лет

Сообщений: 2145
Благодарностей: 825
Полезность: 521

Еще пару тем создайте, вас не видят иначе.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 25.9.2015, 20:18
Сообщение #13


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

ex3m777, не решена по тому, что Не доходят письма
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ykpon
сообщение 25.9.2015, 20:23
Сообщение #14


Стаж: 12 лет

Сообщений: 328
Благодарностей: 200
Полезность: < 0

Правильно выше писали, используйте для таких целей SMTP, забыть пора про mail() в php.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 25.9.2015, 22:59
Сообщение #15
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

Shelest, если письма не передаются на SMTP - ошибка в настройках PHP.
Если письмо успешно передано на SMTP но не отправлено на другой сервер, ошибка в настройках самого SMTP сервера.
Если ошибка в SMTP сервере и вы арендуете VPS/Хостинг/Сервер, обратитесь в тех поддержку. Они обязаны Вам помочь и сами исправить ошибку. Возможно что-то с их серверами не так.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 10 гостей читают эту тему: