Показать сообщение отдельно

  #8  
Старый 11.12.2008, 07:46
.:nbd:.
Познающий
Регистрация: 27.07.2008
Сообщений: 98
Провел на форуме:
405792

Репутация: 86
По умолчанию

ТС спросил как получить, а не как написать скрипт который создает сессии или устанавливает куки. ТС куки приходят в заголовке SetCookie ответа после первого обращения к серверу. Прарсим заголовки, сохраняем установленные плюшки, дальше как написал 159932.

код примерно такой:
PHP код:
$url='http://site.ru/index.php';
//задаем урл

$ch curl_init();
curl_setopt($chCURLOPT_URL,$url); 
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt($chCURLOPT_HEADER,1);
$temp=curl_exec($ch);
curl_close($ch);
//отправляем CURLом get запрос и сохраняем ответ в $temp

$cookie_pattern="|Set\-Cookie\:\s(.*);\sdomain|";
preg_match_all($cook_pattern$temp$out);
$cookie='Cookie: '.$out[1][0];
//парсим куки из ответа и присваиваем переменной $cookie значение установленных плюшек

$ch curl_init();
curl_setopt($chCURLOPT_URL,$url); 
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt($chCURLOPT_COOKIE,$cookie);
$temp=curl_exec($ch);
curl_close($ch);
//засылаем CURLом плюшки обратно 
Но.
Сервер плюшки обычно ставить только после каких либо действий, например авторизации. Для того, чтобы залогиниться нужно будет отправить POSTом (обчно это пост) логин и пасс (ну как минимум) в первом запросе. Тогда его код изменится на :

PHP код:
 $post_data='login=vasya&pass=trucoder';

$ch curl_init();
curl_setopt($chCURLOPT_URL,$url); 
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt($chCURLOPT_POSTFIELDS$post_data);
curl_setopt($chCURLOPT_HEADER,1);
$temp=curl_exec($ch);
curl_close($ch); 
Для полного ответа задай правильно вопрос, что именно тебе нужно сделать.

Последний раз редактировалось .:nbd:.; 11.12.2008 в 08:14..