Помощник
|
Отпправка и проверка данных средстави curl |
PRStudio
|
Сообщение
#1
|
||
|
|
||
|
|||
ZhukV |
8.1.2011, 20:48;
Ответить: ZhukV
Сообщение
#2
|
|
|
[PHP]class CUrl{
protected $url = ''; protected $cookie = ''; protected $browser = ''; protected $CUrlError; private $result ; private function setErrorCUrl($code = '', $text = '', $type = E_USER_NOTICE){ $view_error = true; if($code === true){ $type = $text; $code = curl_errno(); $text = curl_error(); } if(!$text || !$type){ return !trigger_error('Not parameters', E_USER_WARNING); } $this -> CUrlError = array('CODE' => $code, 'TEXT' => $text, 'TYPE' => $type, 'ERROR' => true); if($view_error == true){ trigger_error($text, $type); } return true; } protected function isErrorCUrl(){ return $this -> CUrlError['ERROR']; } public function getResult(){ return $this -> result; } public function init(){ $all = get_loaded_extensions(); if(!in_array('curl', $all)){ $this -> setErrorCUrl('', 'Not libary "php_curl.dll". Please initialization libary.', E_USER_ERROR); } if(!$this -> url){ return !$this -> setErrorCUrl('', 'Not url connected!!! Please write url.', E_USER_WARNING); } $curl = curl_init($this -> url); if(!is_resource($curl)){ return !$this -> setErrorCUrl('', 'CUrl no resource.', E_USER_WARNING); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); if($this -> browser){ curl_setopt($curl, CURLOPT_USERAGENT, $this -> browser); } if($this -> cookie){ if(is_array($this -> cookie)){ foreach($this -> cookie as $k => $v){ $temp .= "{$k}={$v}; "; } }elseif(is_string($this -> cookie)){ $temp = $this -> cookie; } else{ return $this -> setErrorCUrl('', 'Bad parametr cookie.', E_USER_WARNING); } curl_setopt($curl, CURLOPT_COOKIE, $temp); } $out = curl_exec($curl); if(!$out){ return !$this -> setErrorCUrl('', 'Not result CUrl'); } $this -> result = $out; curl_close($curl); return $this -> result; } function __construct($start = false){ if($start === true){ $this -> init(); } } }[/PHP] Думаю, далее сложного ничего нет. Єто только тестовій класс. Можно также доработать и переработать под себя. А вообщем то, такое расказать очень сложно. CUrl -- огромная библия под ПХП, которая служит для отправки любых данных на разные адресса. Также там была включена возможность изьятия данных из сокеттов. Если нужно по подробнее, то только http://php.net Сам там его изучил.
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Проверка позиций сайтов в поисковых системах с помощью Positon.ru Мониторинг продвижения сайтов |
183 | Positon | 179471 | 12.4.2024, 8:32 автор: Positon |
|
Интеграция спортивных данных API. Коэффициенты БК, Live результаты | 15 | yaroslav89 | 6843 | 8.4.2024, 17:17 автор: spoyer_ru |
|
ГОРЯЧИЕ FOREX|CRYPTO ЛИДЫ. БАЗЫ ДАННЫХ [Чарджбек|Рекавери|Возврат] |
9 | Leado | 3891 | 9.2.2024, 16:04 автор: baza0013 |
|
Базы данных, различной тематики, выкладываем тут. Делимся, обмениваемся, заказываем, парсим. |
12 | InfoObmen | 15249 | 4.9.2022, 2:32 автор: Галецкая |
|
Сбор Данных Услуг И Специалистов Яндекс.Услуги | 2 | zkalinin | 2377 | 26.5.2022, 17:10 автор: zkalinin |
Текстовая версия | Сейчас: 19.4.2024, 22:01 |