Этот код работает нормально в моей стране, Египте, так как каждый раз, когда я загружаю его на сервер, который находится в Великобритании, он не работает, кажется, это проблема аутентификации страны.
Есть ли способ обойти это ограничение, даже если в настройках Hotmail
class Hotmail {
private $_email;
private $_password;
private $_host = "{imap-mail.outlook.com:993/ssl}Inbox";
public function __construct($email, $password) {
$this->_email = $email;
$this->_password = $password;
}
public function authenticate() {
if ($mbox = imap_open($this->_host, $this->_email, $this->_password)) {
$imap_obj = imap_check($mbox);
echo "<h1>CONNECTED TO IMAP HOST</h1><h2>$this->_host (" . $imap_obj->Nmsgs . ")<h2>";
} else {
echo imap_last_error();
echo "<h1>FAILED TO CONNECT TO IMAP HOST!</h1>\n";
die;
}
echo "<h3>IMAP LIST OF FOLDERS</h3>";
$folders = imap_list($mbox, $this->_host, "*");
echo "<ul>";
foreach ($folders as $folder) {
echo '<li><a href="mail.php?folder=' . $folder . '&func=view">' . imap_utf7_decode($folder) . '</a></li>';
}
echo "</ul>";
imap_close($mbox);
}
}
$hotmail = new Hotmail('[email protected]', '01277217631!');
$hotmail->authenticate();
В египте в возврат: подключен
В Великобритании, в свою очередь, не удалось подключиться как echo imap_last_error (); верните следующее сообщение:
Не удается пройти проверку подлинности на сервере IMAP: [AUTHORIZATIONFAILED] Учетная запись заблокирована. Войдите в свой аккаунт через веб-браузер
Задача ещё не решена.
Других решений пока нет …