[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: авторизация
Сергей
Здравствуйте, подскажите пожалуйста, мне нужно войти на сайт с помощью php, для этого нужно зарегестрироваться, как с помощью php зарегестрироваться на сайте, пройти авторизацию? так чтобы файл php лежал у меня на серваке, а заходил я на другой сайт, а потом работать с этим сайтом, брать с него информацию?



Спустя 2 минуты, 59 секунд (25.01.2009 - 12:30) Сергей написал(а):
точнее вопрос: Подскажите как авторизоваться на http://s6.travian.ru/login.php со своими логином паролем.

Спустя 10 минут, 52 секунды (25.01.2009 - 12:41) jetistyum написал(а):
Подсказать - не проблема
написать готовый скрипт - увольте smile.gif

авторизация обычно происходит так

получаешь данные из формы авторизации, проверяешь запись в базе данных, есть ли такой логин, если есть, совпадают ли пароли, введенный пользователем и тот, который хранится в базе данных, если совпадает, то авторизация прошла, ставишь в сессии флаг, по которому можешь потом не производить проверку. таким образом тебе не нужно будет повторно проверять авторизацию. можно записать еще в куки какой-нибудь хитрый хэш, по которому можно будет проводить авторизацию

Спустя 15 минут, 48 секунд (25.01.2009 - 12:57) Сергей написал(а):
Подскажите как узнать имена полей ввода чтобы можно было бы к ним обратится?
на страничке http://s6.travian.ru/login.php есть код такой
HTML
<input class="fm fm110" type="text" name="e12bdea" value="marica" maxlength="15"> <span class="e f7"></span>

<input class="fm fm110" type="password" name="e4a0afc" value="*******" maxlength="20"> <span class="e f7"></span>


<p align="center"><input type="hidden" name="e729719" value="7a1878fb11">
<input type="image" value="login" border="0" name="s1" src="img/ru/b/l1.gif" width="80" height="20" onMousedown="btm1('s1','','img/ru/b/l2.gif',1)" onMouseover="btm1('s1','','img/ru/b/l3.gif',1)" onMouseUp="btm0()" onMouseOut="btm0()" onClick="xy()"></input></p></form>


тоесть по идее чтобы зайти нужно обратится к такой ссылке, правильно?
http://s6.travian.ru/login.php?e12bdea=&qu...="ok"
так?

Спустя 9 минут, 5 секунд (25.01.2009 - 13:06) jetistyum написал(а):
1. данные лучше передавать методом POST
<form method="POST">
...
</form>

тогда в скрипте получаешь данные из глобального массива
$_POST

$login = $_POST['e12bdea'];
$password = $_POST['e4a0afc'];


весьма странный способ именования полей.

Спустя 16 минут, 9 секунд (25.01.2009 - 13:22) Сергей написал(а):
ну да, это есть что я написал на сайте, а мне как бы нужно осуществить вход на сайт с помощью php, тоесть чтобы я ввел в файле login и pass и оно меня автоматом перекинуло на сайт.

Спустя 3 минуты, 50 секунд (25.01.2009 - 13:26) buyskih написал(а):
Цитата (jetistyum @ 25.01.2009 - 12:06)
весьма странный способ именования полей.
ничего странного. Так делают чтобы избавится от автологина ботами.

Подсказываю простой способ как обойти
Юзаем Ajax + php (если через веб-интерфейс)
обычно форм на странице всегда одно и то же количество
и полей в каждой форме тоже
Заполняем нужное поле через form[form_number].field[field_number]
Либо имя поля form[form_number].field[field_number].name

Спустя 46 секунд (25.01.2009 - 13:27) jetistyum написал(а):
а....
ну тут используй cURL
отправка данных методом POST и поддержку сессии
читай про cURL

Спустя 2 минуты, 3 секунды (25.01.2009 - 13:29) jetistyum написал(а):
Цитата
ничего странного. Так делают чтобы избавится от автологина ботами.

Смеешься чтоль, типа тебе через JS хватило навыков найти нужные поля, а ботов пишут вообще глупые люди, и разпарсить имена полей очень сложно ))))))
это ниразу не спасает от автоматической регистрацией ботами, для этого более эффективно юзать каптчу, а не рандом генерацию имен полей.

Спустя 52 минуты, 55 секунд (25.01.2009 - 14:22) buyskih написал(а):
как никак, а через $_REQUEST['field_name'] уже не обратишься wink.gif

ну и кроме js можно юзайть DOM или X-PATH

Спустя 2 часа, 52 минуты, 21 секунда (25.01.2009 - 17:14) lawbreaker написал(а):
Зарегись тут и тебе тут скажут
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.