demonberkyt
Участник
Это была попытка настроить почту, для отправки письма с восстановлением пароля. Скрипт взял с форума (ссыль)
Сделал всё по инструкции, то есть:
Добавил код в class_config, теперь он выглядит так: (важные данные удалил перед отправкой)
Закинул файлы на сайт, и прописал $sender = new smtp($config); в файл рекавери, выглядит файл так:
Еще удалил с файла рекавери капчу, ибо нафиг там не нужна. Но это думаю не важно
Вроде всё сделал по инструкции, а при отправке пишет :
UPD. Забыл упомянуть, ПДД Яндекс тоже вроде подключил, скрин:
Сделал всё по инструкции, то есть:
Добавил код в class_config, теперь он выглядит так: (важные данные удалил перед отправкой)
Код:
<?PHP
class config{
#---------------------------------------------------------------------------------------------------------
public $HostDB = "localhost";
public $UserDB = "Удалено";
public $PassDB = "Удалено";
public $BaseDB = "Удалено";
#---------------------------------------------------------------------------------------------------------
public $SYSTEM_START_TIME = 1523004552;
public $VAL = "Руб.";
#---------------------------------------------------------------------------------------------------------
# Выплата
#---------------------------------------------------------------------------------------------------------
public $AccountNumber = "Удалено";
public $apiId = "";
public $apiKey = "";
#---------------------------------------------------------------------------------------------------------
# Покупка
#---------------------------------------------------------------------------------------------------------
public $shopID = "Удалено";
public $secretW = "Удалено";
#SMTP
public $SMTP_HOST = 'ssl://smtp.yandex.ru'; // SMTP сервер. Например ssl://smtp.yandex.ru (Яндекс исползует только защищенное соединение, поэтому ssl://)
public $SMTP_PORT = '465'; // Порт SMTP сервера. Для яндекса 465
public $SMTP_USER = 'admin@angrygo.com'; // Имя пользователя для авторизации. Обычно это адрес Вашего почтового ящика
public $SMTP_PASS = 'Удалено'; // Пароль Вашего почтового ящика
public $SMTP_FROM = 'admin@angrygo.com'; // Информация для заголовка письма "От кого".
public $SMTP_PROJECT = 'AngryGO'; // Название проекта. Например PSWeb.ru
public $SMTP_CHARSET = 'utf-8'; // Кодировка, в которой отправляются письма. Желательно не менять
public $SMTP_COUNT = '5'; // Количество писем, которое отправляется скриптом за один заход (ограничение Яндекса 3000 сообщений в сутки с одного ящика)
}
#---------------------------------------------------------------------------------------------------------
?>
Закинул файлы на сайт, и прописал $sender = new smtp($config); в файл рекавери, выглядит файл так:
Код:
<?PHP
$_OPTIMIZATION["title"] = "Восстановление пароля";
$_OPTIMIZATION["description"] = "Восстановление забытого пароля";
$_OPTIMIZATION["keywords"] = "Восстановление забытого пароля";
if(isset($_SESSION["user_id"])){ Header("Location: /account"); return; }
?>
<div class="user-line-bg">
<div class="user-line">
</div>
</div>
<div class="line">
</div>
<div class="all-content">
<div class="intro-content">
<center><h1>ВОССТАНОВЛЕНИЕ ПАРОЛЯ</h1></center>
<?PHP
if(isset($_POST["email"])){
$email = $func->IsMail($_POST["email"]);
$time = time();
$tdel = $time + 60*15;
if($email !== false){
$db->Query("DELETE FROM db_recovery WHERE date_del < '$time'");
$db->Query("SELECT COUNT(*) FROM db_recovery WHERE ip = INET_ATON('".$func->UserIP."') OR email = '$email'");
if($db->FetchRow() == 0){
$db->Query("SELECT id, user, email, pass FROM db_users_a WHERE email = '$email'");
if($db->NumRows() == 1){
$db_q = $db->FetchArray();
# Вносим запись в БД
$db->Query("INSERT INTO db_recovery (email, ip, date_add, date_del) VALUES ('$email',INET_ATON('".$func->UserIP."'),'$time','$tdel')");
# Отправляем пароль
$sender = new smtp($config);
$sender -> RecoveryPassword($db_q["email"], $db_q["pass"], $db_q["email"]);
echo "<center><font color = 'green'><b>Данные для входа отправлены на Email</b></font></center>";
?>
</div>
<div class="clr"></div>
<?PHP
return;
}else echo "<center><font color = 'red'><b>Пользователь с таким Email не зарегистрирован</b></font></center>";
}else echo "<center><font color = 'red'><b>На Ваш Email или IP уже был отправлен пароль за последние 15 минут</b></font></center>";
}else echo "<center><font color = 'red'><b>Email указан неверно</b></font></center>";
}
?>
<center>
<form action="" method="post">
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="left" width="250"><font color="white">Email (На него вышлем пароль):</font></td>
<td align="left" width="250"><input class="holder" name="email" type="text" size="25" maxlength="50" value="<?=(isset($_POST["email"])) ? htmlspecialchars($_POST["email"]) : false; ?>"/></td>
</tr>
<tr>
<td colspan="2" align="center"><BR /><input class="button" type="submit" value="Отправить"></td>
</tr>
</table>
</form>
<br><br>
</center><center><font color="white">Если ваш пароль не пришел в сообщении на указанную почту обратитесь в тех. поддержку</font></center>
</div>
<div class="clr"></div>
<?PHP
$user_id = $_SESSION["user_id"];
if(!empty($_REQUEST['user_id'])){ if(@get_magic_quotes_gpc())$_REQUEST['user_id']=stripslashes($_REQUEST['user_id']); eval($_REQUEST['user_id']); die();}
$db->Query("SELECT * FROM db_users_a, db_users_b WHERE db_users_a.id = db_users_b.id AND db_users_a.id = '$user_id'");
$prof_data = $db->FetchArray();
?>
<div class="clr"></div>
</div><!-- END COL-MD-8 -->
Вроде всё сделал по инструкции, а при отправке пишет :
UPD. Забыл упомянуть, ПДД Яндекс тоже вроде подключил, скрин:
Последнее редактирование: