Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/268: Рейтинг темы: голосов - 268, средняя оценка - 4.98
 Аватар для murod
28 / 7 / 4
Регистрация: 04.11.2010
Сообщений: 163

Скрипт для автоматического ввода логина и пароля для другого сайта

13.01.2014, 00:17. Показов 51878. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать скрипт автоматического ввода логина и пароля для другого сайта, допустим у меня есть логин и пароль пользователя, и мне нужно чтоб мой скрипт автоматически ввел пароль и логин на какой-то конкретный сайт. Адрес сайта начинается с https ..

Заранее Благодарю
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.01.2014, 00:17
Ответы с готовыми решениями:

Форма для ввода логина и пароля для входа
Имеется форма для ввода логина и пароля для входа в административный раздел сайта, файл index.php. В браузере Opera посмотрел код элемента...

Форма для ввода пароля и логина
Здравствуйте, у меня возникла потребность в создании (в html), формы для ввода пароля и логина и чтобы после нажатия на кнопку вход данные...

Простейший скрипт для проверки логина и пароля
Доброго времени суток! вот <?php $DATA="Admin"; $DATA="123456789"; $DATA="Turn"; $DATA="212121"; ...

17
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
13.01.2014, 09:14
murod, используйте CURL. С помощью него можно сымитировать браузер.
1
 Аватар для murod
28 / 7 / 4
Регистрация: 04.11.2010
Сообщений: 163
14.01.2014, 11:02  [ТС]
не могли бы вы мне готовый скрипт отправить , просто времени мало чтоб ее изучать, спасибо
0
14.01.2014, 12:49
 Комментарий модератора 
Запрещено отсылать пользователей из тематических разделов в разделы фриланса.
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
15.01.2014, 13:19
Цитата Сообщение от murod Посмотреть сообщение
не могли бы вы мне готовый скрипт отправить
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
    # Настройки
    $login = ''; # Логин
    $password = ''; # Пароль
    $url = ''; # Адрес страницы, куда отправляется форма
    
    # Инициализируем сеанс CURL
    if( !$ch = curl_init() )
        # Ошибка
        die( "Невозможно создать сеанс CURL. Возможно у вас не установлена эта библиотека." );
        
    # Данные, передаваемые методом POST (тут укажите названия полей формы авторизации)
    $data = array(
        'login' => $login, # Передаём логин
        'password' => $password, # Передаём пароль
        'submit' => 'Отправить' # Передаём имя кнопки (возможно на сайте идёт проверка нажатия кнопки)
    );
    
    # Массив настроек CURL
    $options = array(
        CURLOPT_URL => $url, # Ссылка на сайт
        CURLOPT_FOLLOWLOCATION => true, # Следование Location
        CURLOPT_POST => true, # Передаём данные методом POST
        CURLOPT_POSTFIELDS => $data, # POST данные
        CURLOPT_SSL_VERIFYHOST => false, # Не проверяем сертификат SSL
        CURLOPT_TIMEOUT => 10, # Таймаут запроса в секундах,
        CURLOPT_COOKIEJAR => 'cookie.txt' # Файл, куда сохраняются COOKIE (для последующих запросов)
    );
3
 Аватар для murod
28 / 7 / 4
Регистрация: 04.11.2010
Сообщений: 163
16.01.2014, 21:57  [ТС]
lyod,

PHP
1
2
3
4
5
$data = array(
        'login' => $login, # Передаём логин
        'password' => $password, # Передаём пароль
        'submit' => 'Отправить' # Передаём имя кнопки (возможно на сайте идёт проверка нажатия кнопки)
    );
'login' , 'password', 'submit' - это название полей того сайта на который делаем авторизацию ?
и $login = '', $password='', $submit ='' - они такими пустыми останутся ?;
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
17.01.2014, 07:47
Не понял. Я скрипт не дописал что-ли. Или не весь сюда скопировал.
Вот весь скрипт:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
    # Настройки
    $login = ''; # Логин
    $password = ''; # Пароль
    $url = ''; # Адрес страницы, куда отправляется форма
    
    # Инициализируем сеанс CURL
    if( !$ch = curl_init() )
        # Ошибка
        die( "Невозможно создать сеанс CURL. Возможно у вас не установлена эта библиотека." );
        
    # Данные, передаваемые методом POST (тут укажите названия полей формы авторизации)
    $data = array(
        'login' => $login, # Передаём логин
        'password' => $password, # Передаём пароль
        'submit' => 'Отправить' # Передаём имя кнопки (возможно на сайте идёт проверка нажатия кнопки)
    );
    
    # Массив настроек CURL
    $options = array(
        CURLOPT_URL => $url, # Ссылка на сайт
        CURLOPT_FOLLOWLOCATION => true, # Следование Location
        CURLOPT_POST => true, # Передаём данные методом POST
        CURLOPT_POSTFIELDS => $data, # POST данные
        CURLOPT_SSL_VERIFYHOST => false, # Не проверяем сертификат SSL
        CURLOPT_TIMEOUT => 10, # Таймаут запроса в секундах,
        CURLOPT_COOKIEJAR => 'cookie.txt' # Файл, куда сохраняются COOKIE (для последующих запросов)
    );
    
    # Устанавливаем опции
    curl_setopt_array( $ch, $options );
 
    # Выполняем запрос
    curl_exec( $ch );
 
    # Закрываем сеанс CURL
    curl_close( $ch );
Цитата Сообщение от murod Посмотреть сообщение
'login' , 'password', 'submit' - это название полей того сайта на который делаем авторизацию ?
Да, это название полей. Поменяйте только названия на реальные, какие в реальной форме на сайте том. Логин и пароль от сайта введите вверху, где написано "Настройки".
4
0 / 0 / 0
Регистрация: 09.12.2014
Сообщений: 2
09.12.2014, 11:02
у кнопки "Вход" нет названия, вот так она выглядит в коде:
HTML5
1
<input class="btn red" value="" type="submit">
это личный кабинет мтс: https://login.mts.ru
(там переадресация, я в скрипте указываю длинную ссылку)
0
0 / 0 / 0
Регистрация: 10.02.2015
Сообщений: 1
10.02.2015, 17:24
извините а как сделать так чтоб вводилось из фаила?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
10.02.2015, 18:09
Цитата Сообщение от nikitos2301 Посмотреть сообщение
как сделать так чтоб вводилось из фаила?
Получите из файла данные, с помощью функции file(), например, а затем подставьте их в этот массив:
PHP
1
2
3
4
5
6
# Данные, передаваемые методом POST (тут укажите названия полей формы авторизации)
    $data = array(
        'login' => $login, # Передаём логин
        'password' => $password, # Передаём пароль
        'submit' => 'Отправить' # Передаём имя кнопки (возможно на сайте идёт проверка нажатия кнопки)
    );
0
0 / 0 / 0
Регистрация: 19.06.2017
Сообщений: 1
19.06.2017, 23:45
А скажите пожалуйста на vk.com Я могу так же зайти?
И если могу то что именно нужно.
Перетыкал уже все, ничего не получается

Добавлено через 14 секунд
А скажите пожалуйста на vk.com Я могу так же зайти?
И если могу то что именно нужно.
Перетыкал уже все, ничего не получается
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
20.06.2017, 06:29
Цитата Сообщение от mistskiy777 Посмотреть сообщение
на vk.com Я могу так же зайти?
Конечно можете. Для начала надо нажать в обозревателе F12, затем выполнить вход в аккаунт VK и во вкладке "Сеть" посмотреть, какие заголовки и поля формы отправляются к VK.

Затем заголовки перечислить, как написано тут (в описании к CURLOPT_HTTPHEADER):
http://php.net/manual/ru/function.curl-setopt.php
а данные перечислить в переменной $data из скрипта выше.
0
76 / 32 / 11
Регистрация: 28.02.2011
Сообщений: 2,011
30.10.2017, 07:45
Подскажите пожалуйста, почему я свои данные подставляю, а всё равно эти данные не подставляются в форму входа? Нажал F12, там много каких то заголовков, какие подставлять не понятно. Т.е. как правильно написать, чтоб данные подставились в форму входа?
# Настройки
$login = 'xxx'; # Логин
$password = 'xxx_1'; # Пароль
$url = 'http://tmp-domen.ru/index.php'; # Адрес страницы, куда отправляется форма
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
30.10.2017, 14:01
В примере выше передаются данные с ключами: login, password и submit. Вы уверены, что поля на том сайте, куда делаете запрос. имеют такие же названия?
1
76 / 32 / 11
Регистрация: 28.02.2011
Сообщений: 2,011
31.10.2017, 09:27
Спасибо, но это стандартная CMS джумла, как можно найти названия этих полей, нажимал F12, сеть, но там тоже какие то цифры, но у меня есть открытый код джумлы, и я там должен найти эти названия?

Да там ещё какой-то маркер отсылается, и если за 15 минут пароль не введён, то маркер обновляется, видать идёт проверка этого маркера
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
02.11.2017, 12:57
Цитата Сообщение от tmpnik1 Посмотреть сообщение
как можно найти названия этих полей
F12 и вкладка "Elements" или CTRL+U. Там найти код формы и узнать поля.
Есть ещё вариант: Нажать F12, перейти на вкладку "Network" и отправить форму. При отправке появятся данные запроса, там тоже можно увидеть обновляемые поля.
0
76 / 32 / 11
Регистрация: 28.02.2011
Сообщений: 2,011
03.11.2017, 11:53
Может что-то другое... поля поставил какие в запросе, но всё равно не передаётся логин пароль..
программа изменённая(index1.php)
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    # Настройки
    $username = 'xxx'; # Логин
    $password = 'xxx_1'; # Пароль
    $url = 'http://tmp-domen.ru/index.php'; # Адрес страницы, куда отправляется форма
    
    # Инициализируем сеанс CURL
    if( !$ch = curl_init() )
        # Ошибка
        die( "Невозможно создать сеанс CURL. Возможно у вас не установлена эта библиотека." );
        
    # Данные, передаваемые методом POST (тут укажите названия полей формы авторизации)
    $data = array(
        'username' => $username, # Передаём логин
        'password' => $password, # Передаём пароль
        'submit' => 'Войти' # Передаём имя кнопки (возможно на сайте идёт проверка нажатия кнопки)
    );

запрос
Кликните здесь для просмотра всего текста

сама форма
Кликните здесь для просмотра всего текста
</div><div class="well "><h3 class="page-header">Login Form</h3><form action="/index.php" method="post" id="login-form" class="form-inline">
<div class="userdata">
<div id="form-login-username" class="control-group">
<div class="controls">
<div class="input-prepend">
<span class="add-on">
<span class="icon-user hasTooltip" title="Логин"></span>
<label for="modlgn-username" class="element-invisible">Логин</label>
</span>
<input id="modlgn-username" type="text" name="username" class="input-small" tabindex="0" size="18" placeholder="Логин" />
</div>
</div>
</div>
<div id="form-login-password" class="control-group">
<div class="controls">
<div class="input-prepend">
<span class="add-on">
<span class="icon-lock hasTooltip" title="Пароль">
</span>
<label for="modlgn-passwd" class="element-invisible">Пароль </label>
</span>
<input id="modlgn-passwd" type="password" name="password" class="input-small" tabindex="0" size="18" placeholder="Пароль" />
</div>
</div>
</div>
<div id="form-login-remember" class="control-group checkbox">
<label for="modlgn-remember" class="control-label">Запомнить меня</label> <input id="modlgn-remember" type="checkbox" name="remember" class="inputbox" value="yes"/>
</div>
<div id="form-login-submit" class="control-group">
<div class="controls">
<button type="submit" tabindex="0" name="Submit" class="btn btn-primary login-button">Войти</button>
</div>
</div>
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
03.11.2017, 13:35
Вы только 3 значения отсылается (username, password, submit), а на снимке их 7. Причём некоторых в форме нет, вероятно формируются динамически (с помощью JS).
Надо изучать JS-код, искать, где что там формируется и повторить алгоритм на PHP.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.11.2017, 13:35
Помогаю со студенческими работами здесь

Как сделать скрипт для автоматического скриншота сайта.
Посмотрите сюда: http://advisor.wmtransfer.com/SiteDetails.aspx?url=cyberforum.ru#.Uv6WT2J_sjZ Это же не админ добавлял скриншот...

Запись в cookies информации для автоматического логина
Написал скрипт авторизации, хотел записать логин и пароль в куки таким способом setcookie(&quot;pass&quot;, $passmd, time()+3600 * 24 *...

Условие для проверки логина и пароля для создания сессии
Добрый вечер, формучане. Проблема такая: нужно проверить, есть ли указанный в форме логин/пароль в базе данных или нет. Вход в личный...

Скрипт отправки логина и пароля на сервер
Доброго дня. Не получается написать скрипт, который будет принимать данные отправленные с клиента и затем сверять их с базой данных,...

Ссылки после ввода логина и пароля не работают
Не могу понять в чем ошибка и почему ссылки после ввода логина и пароля не работают(( вот код &lt;title&gt;ОКНО ПРОВЕРКИ&lt;/title&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru