Квартиры, дома, земельные участки Краснодарского края без посредников. Объявления собственников недвижимости.
Реклама здесь
Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Авторизация POST на PHP с использованием curl

Пример POST-авторизации на PHP с использованием curl:


<?php
function login($url,$login,$pass){
   
$ch curl_init();
   if(
strtolower((substr($url,0,5))=='https') { // если соединяемся с https
    
curl_setopt($chCURLOPT_SSL_VERIFYPEER0);
    
curl_setopt($chCURLOPT_SSL_VERIFYHOST0);
   }
   
curl_setopt($chCURLOPT_URL$url);
   
// откуда пришли на эту страницу
   
curl_setopt($chCURLOPT_REFERER$url);
   
// cURL будет выводить подробные сообщения о всех производимых действиях
   
curl_setopt($chCURLOPT_VERBOSE1);
   
curl_setopt($chCURLOPT_POST1);
   
curl_setopt($chCURLOPT_FOLLOWLOCATION1);
   
curl_setopt($chCURLOPT_POSTFIELDS,"login=".$login."&pass=".$pass);
   
curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4");
   
curl_setopt($chCURLOPT_HEADER1);
   
curl_setopt($chCURLOPT_RETURNTRANSFER1);
   
//сохранять полученные COOKIE в файл   
   
curl_setopt($chCURLOPT_COOKIEJAR$_SERVER['DOCUMENT_ROOT'].'/cookie.txt');   
   
$result=curl_exec($ch);

   
// Убеждаемся что произошло перенаправление после авторизации
   
if(strpos($result,"Location: home.php")===false) die('Login incorrect');

   
curl_close($ch);     

   return 
$result;
}

// чтение страницы после авторизации
function Read($url){
   
$ch curl_init();
   
curl_setopt($chCURLOPT_URL$url);   
   
// откуда пришли на эту страницу
   
curl_setopt($chCURLOPT_REFERER$url);
   
//запрещаем делать запрос с помощью POST и соответственно разрешаем с помощью GET    
   
curl_setopt($chCURLOPT_POST0);    
   
curl_setopt($chCURLOPT_FOLLOWLOCATION1);
   
//отсылаем серверу COOKIE полученные от него при авторизации   
   
curl_setopt($chCURLOPT_COOKIEFILE$_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
   
curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4");

   
$result curl_exec($ch);   
       
   
curl_close($ch);

   return 
$result;
}
?>
Скопировать в буфер

© Copyright 2008-2012 by KDG