Авторизация на DLE сайте через PHP

В некоторых случаях нам нужно получить необходимую информацию, закрытую для гостей определенного сайта. Для этого нам придётся авторизоваться на сайте под своим профилем. На примере рассмотрим сайты на движке DataLife Engine.

Для начала, давайте рассмотрим весь POST запрос, который мы передаём серверу:
login_name — данный параметр отвечает за логин пользователя.
login_password — как понятно из названия, это — пароль.
login=submit — эмулируем нажатие кнопки авторизации.
Очень важный фактор — если будет не заполнен хотя бы один параметр, авторизация пройдёт с ошибкой. Бывают моменты, когда в запрос добавляют несколько никому не нужных параметров, а именно — координаты нажатия курсора. Это можно не заполнять, но мы рекомендуем отправить несколько байт памяти, во избежание какой-либо ошибки.

<?php
//url сайта, куда будет отправлен запрос
$url = "*********";
//значение логина
$login = "********";
//значения пароля
$password = "*********";

// Формируем POST запрос
$query_str = "login_name=".$login."&login_password=".$password."&login=submit";

// Инициализируем сеанс CURL (впишите сюда полный адрес страницы с формой)
$cin = curl_init($url);

// Указываем, что запрос делаем через POST
curl_setopt($cin, CURLOPT_POST, 1);

// Указываем строку, передаваемую в запросе
curl_setopt($cin, CURLOPT_POSTFIELDS, $query_str);

// Выполняем CURL запрос
curl_exec($cin);

 // Закрываем работу с CURL
curl_close($cin);
?>

Этот способ подходит только для тех сайтов, которые расположены на DLE.

Читайте также:  Изучаем переменные в PHP
Рейтинг
( Пока оценок нет )
Блог о программировании, продвижении и дизайне.
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: