Читать в Яндекс.Подписках

Добро пожаловать на мою веб-страницу

Май
19
2012

Автоматическия регистрация почтовых ящиков для сервиса pdd.yandex.ru  

Внимание, откроется в новом окне.ПечатьE-mail

Как известно Яндекс запретил автоматическую регистрацию почтовых ящиков для доменов. Теперь для этого необходимо использовать API.
Поэтому представляю вашему вниманию бесплатный скрипт «Автоматической регистрации почтовых ящиков для сервиса pdd.yandex.ru»

Исходники в 2-х файлах


index.php

<?php
#######
## Автоматическия регистрация почтовых ящиков для сервиса pdd.yandex.ru
#######
session_start(); # Запускаем сессию

if (isset($_REQUEST[login]) AND isset($_REQUEST[pass]) AND $_SESSION[confirm]==$_REQUEST[confirm] AND isset($_REQUEST[confirm]))
{
## Для активации API Яндекс.Почты для доменов необходимо получить авторизационный токен.
## Для получения токена необходимо после подключения домена перейти по адресу: https://pddimp.yandex.ru/get_token.xml?domain_name=...
## возвращает: <ok token="..."/> или <error reason='...'/>
## Полученный токен используется также для обращения к остальным методам API. Получать его нужно только один раз.

$token="ваш_токен"; # токен
$login=$_REQUEST[login]; // имя почтового ящика без домена
$password=$_REQUEST[pass]; // пароль почтового ящика

$postData="token=$token"."&u_login=$login"."&u_password=$password"; // формируем запрос

$ch = curl_init(); // инициализация сеанса
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // Задает проверку имени, указанного в сертификате удаленного сервера, при установлении SSL соединения.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // запретить проверку сертификата удаленного сервера
curl_setopt($ch, CURLOPT_URL, "https://pddimp.yandex.ru/reg_user_token.xml"); // URL, с которым будет производиться операция.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // При установке этого параметра в ненулевое значение CURL будет возвращать результат, а не выводить его.
curl_setopt($ch, CURLOPT_POST, 1); // При установке этого параметра в ненулевое значение будет отправлен HTTP запрос методом POST
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); // Строка, содержащая данные для HTTP POST запроса.
$answer=curl_exec($ch); // загрузка страницы и выдача её браузеру
curl_close($ch); // завершение сеанса и освобождение ресурсов

$pos1 = stripos($answer,"ok uid");
if ($pos1!==false) {
echo "Данный адрес успешно зарегистрирован!";
}

$pos1 = stripos($answer,"occupied");
if ($pos1!==false) {
echo "Данный адрес уже занят!";
}

$pos1 = stripos($answer,"badlogin");
if ($pos1!==false) {
echo "В логине использованы не допустимые символы!";
}

$pos1 = stripos($answer,"bad_password");
if ($pos1!==false) {
echo "В пароле использованы не допустимые символы!";
}

}

// ---------------Генератор кода----------------
$small  = 'abcdefghijklmnopqrstuvwxyz';
$large  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$numbers        = '1234567890';

$password='';
for ($i=0; $i<6; $i++) {
$type=mt_rand(1,3);
switch ($type)
{
case 1:
//     $password.=$large[mt_rand(0,25)];
$password.=$numbers[mt_rand(0,9)];
break;

case 2:
//     $password.=$small[mt_rand(0,25)];
$password.=$numbers[mt_rand(0,9)];
break;

case 3:
$password.=$numbers[mt_rand(0,9)];
break;
}
}
$_SESSION[confirm]=$password;
// ---------------Генератор кода----------------
?>
<!-- Разработка: zloy.org -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Почта@ZloY.org</title>
<style>
*{ FONT-SIZE: 8pt; FONT-FAMILY: verdana; }
b { FONT-WEIGHT: bold; }
.listtitle { BACKGROUND: #425984; COLOR: #EEEEEE; white-space: nowrap; }
td.list { BACKGROUND: #EEEEEE; white-space: nowrap; }
</style>
</head>
<body>
<center><br /><br /><br /><br />
<h1>Регистрация на Почта@ZloY.org</h1>
<table cellspacing="1" cellpadding="5">
<tr>
<td colspan="2">Для регистрации введите желаемый логин и пароль</td></tr>
<form action="index.php" method="POST" name="form">
<input type=hidden name=referer value="/">
<tr><td align=right><input type="text" name="login" title="Логин должен состоять из букв латинского алфавита и может содержать цифры. Регистр букв (большие или маленькие) не имеет значения. В логине нельзя использовать пробелы, но допустимы точки и дефисы. Точка и дефис считаются равнозначными."/></td><td align="left">@zloy.ws</td></tr>
<tr><td align="right"><input type="password" name="password" title="Пароль должен содержать от 6 до 20 символов. Можно использовать латинские буквы, цифры и символы из списка: ! @ # $ % ^ & * ( ) _ - + Пароль не может совпадать с логином."/></td><td align="left">пароль</td></tr>
<tr><td align="right"><input type="text" name="confirm"/></td><td align=left><img src="/img.php" border="0" alt="Код"/></td></tr>
<tr><td align="right" colspan="2"><input type="submit" value="Зарегистрировать"/></td></tr>
</form>
</table>
</center>

</body>
</html>


img.php

<?php
#######
## Генерация изображения
#######
session_start(); # Запускаем сессию
header("Content-type: image/png");
$im = @imagecreate(70,18);
$background = imagecolorallocate ($im, rand(155,255), rand(155,255), rand(155,255));
$font = 'font.ttf';
$x = 3;
$y = 15;
$textcolor=imagecolorallocate($im,0,0,0); # Задаем цвет текста
$x1=0;$x2=80;$y1=rand(0,18);$y2=rand(0,18); # Координаты линии
imageline($im, $x1, $y1, $x2, $y2, $textcolor); # Рисуем линию
$x1=0;$x2=80;$y1=rand(0,18);$y2=rand(0,18); # Координаты линии
imageline($im, $x1, $y1, $x2, $y2, $textcolor); # Рисуем линию
imagettftext($im, 15, 0, $x, $y, $textcolor, $font, $_SESSION[confirm]);
imagepng($im);
imagedestroy($im);
?>

купить авиабилеты аэрофлот волгоград

Что еще почитать...