Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

14.01.2010, 20:13
|
|
Познающий
Регистрация: 24.05.2009
Сообщений: 44
Провел на форуме: 367760
Репутация:
33
|
|
Продолжаю вчерашний вопрос...
PHP код:
<?php
function rambler_login($login,$passw)
{
$login = urlencode($login);
$passw = urlencode($passw);
$ch = curl_init ();
curl_setopt ( $ch , CURLOPT_URL , "http://id.rambler.ru/script/auth.cgi?mode=login" );
curl_setopt ( $ch , CURLOPT_HEADER , 0 );
curl_setopt($ch, CURLOPT_POSTFIELDS, "login=$login&passw=$passw");
$res = curl_exec($ch);
curl_close ( $ch );
if(preg_match('#name=\'s\' id=\'s\' value=\'(.*)\'#',$res,$s))
return $s[1];
else return false;
}
$email = $_POST['login'];
$password = $_POST['passw'];
if(!rambler_login($email, $password)) {
echo $res;
} else {
echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=activate.htm'></head></html>";
}
?>
Все работает,но при вводе правильного логина и пароля выдается такое содиржание страницы:
Moved
The document has moved here.
При нажатии на here успешно авторизуется на ящике!
Так вот вопрос следующего содержания
Как автоматом переходить в ящик без вывода
Moved
The document has moved here.

|
|
|

14.01.2010, 20:16
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от Mil-Net
Продолжаю вчерашний вопрос...
Все работает,но при вводе правильного логина и пароля выдается такое содиржание страницы:
Moved
The document has moved here.
При нажатии на here успешно авторизуется на ящике!
Так вот вопрос следующего содержания
Как автоматом переходить в ящик без вывода
Moved
The document has moved here.

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
|
|

14.01.2010, 20:33
|
|
Познающий
Регистрация: 24.05.2009
Сообщений: 44
Провел на форуме: 367760
Репутация:
33
|
|
Сапасибо большое!
Только вот еше один нюанс ...
При вводе верного пароля заходит на яшик но остается в в строке браузера хост
В моем случае http://localhost/777.php так вот как заменить
http://localhost/777.php на http://mail.rambler.ru/mail/startpage
|
|
|

14.01.2010, 20:36
|
|
Moderator - Level 7
Регистрация: 04.02.2007
Сообщений: 554
Провел на форуме: 7518056
Репутация:
1089
|
|
Сообщение от Mil-Net
Сапасибо большое!
Только вот еше один нюанс ...
При вводе верного пароля заходит на яшик но остается в в строке браузера хост
В моем случае http://localhost/777.php так вот как заменить
http://localhost/777.php на http://mail.rambler.ru/mail/startpage
echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://mail.rambler.ru/mail/startpage'></head></html>";
|
|
|

14.01.2010, 21:01
|
|
Познающий
Регистрация: 24.05.2009
Сообщений: 44
Провел на форуме: 367760
Репутация:
33
|
|
Кхе извиняюсь за упрямство но чтото неполучается
Чтото в коде самом нетак а что немогу понять...
PHP код:
<?php
function rambler_login($login,$passw)
{
$login = urlencode($login);
$passw = urlencode($passw);
$ch = curl_init ();
curl_setopt ( $ch , CURLOPT_URL , "http://id.rambler.ru/script/auth.cgi?mode=login" );
curl_setopt ( $ch , CURLOPT_HEADER , 0 );
curl_setopt($ch, CURLOPT_REFERER, 'http://id.rambler.ru/script/auth.cgi');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "login=$login&passw=$passw");
$res = curl_exec($ch);
curl_close ( $ch );
}
$email = $_POST['login'];
$password = $_POST['passw'];
if(!rambler_login($email, $password)) {
echo $res;
} else {
echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://mail.rambler.ru/mail/startpage'></head></html>";
}
?>
Посмотрите сам код плиз!
|
|
|

14.01.2010, 21:10
|
|
Постоянный
Регистрация: 31.07.2002
Сообщений: 312
Провел на форуме: 1212427
Репутация:
187
|
|
Видимо не работает из-за того, что функция rambler_login нечего не возвращает, нету return
+ к этому поставь после
Код:
function rambler_login($login,$passw)
{
строчку
global $res;
|
|
|

14.01.2010, 21:47
|
|
Познающий
Регистрация: 24.05.2009
Сообщений: 44
Провел на форуме: 367760
Репутация:
33
|
|
Вот я и незнаю как дописать эту функцию
if(!rambler_login($email, $password)) {
а вот вместо переменных $email, $password в голову неприходит что задать
Тоесть как эту функцию организовать так сказать
|
|
|

14.01.2010, 22:19
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
PHP код:
<?php
function rambler_login($login,$passw)
{
$login = urlencode($login);
$passw = urlencode($passw);
$ch = curl_init ();
curl_setopt ( $ch , CURLOPT_URL , "http://id.rambler.ru/script/auth.cgi?mode=login" );
curl_setopt ( $ch , CURLOPT_HEADER , 0 );
curl_setopt($ch, CURLOPT_REFERER, 'http://id.rambler.ru/script/auth.cgi');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "login=$login&passw=$passw");
$res = curl_exec($ch);
curl_close ( $ch );
// а здесь должна быть функция определения валидности мыла
// если валид то делаем return true;
// если невалид то делаем return false;
}
$email = $_POST['login'];
$password = $_POST['passw'];
if(!rambler_login($email, $password)) {
echo $res;
} else {
header('Location: http://mail.rambler.ru/mail/startpage');
}
?>
Лучше через хидры.
Также переменная $res в функции rambler_login локальная т.е. после выполнения функции переменная $res не будет существовать.
Допиши после:
PHP код:
function rambler_login($login,$passw)
{
global $res;
Последний раз редактировалось GlooK; 14.01.2010 в 22:26..
|
|
|

14.01.2010, 22:48
|
|
Познающий
Регистрация: 24.05.2009
Сообщений: 44
Провел на форуме: 367760
Репутация:
33
|
|
Последний вопрос!
Как правильно зделать эту функцию?
if(preg_match('$login=\'s\' $passw=\'s\' value=\'(.*)\'#',$res,$s))
И где об этой функции почитать подробнее)))
|
|
|

14.01.2010, 22:51
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
google.com -> Регулярные выражения
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|