Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Сокеты + POST + SID

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: Киналь   (03.08.2006 в 22:00)   письмо автору
 
   для: Loki   (03.08.2006 в 19:45)
 

Хех, оказывается, надо было весь РНР переустановить=) Зато получилось! Все работает! Ура, товарищи! Спасибо всем!

   
 
 автор: Loki   (03.08.2006 в 19:45)   письмо автору
 
   для: Киналь   (03.08.2006 в 18:39)
 

так доустановите что нужно... денвер это позволяет

   
 
 автор: Киналь   (03.08.2006 в 18:39)   письмо автору
 
   для: Киналь   (31.07.2006 в 20:54)
 

Вот ведь зараза!=) Call to undefinied function curl_init() ! А это Денвер, а пакета с curl для него нету... Но ради одного скрипта всю связку настраиывать точно не буду))

   
 
 автор: Киналь   (03.08.2006 в 17:57)   письмо автору
 
   для: Shorr Kan   (03.08.2006 в 02:17)
 

Хиддены просмотрел в первую очередь=) Там все просто донельзя:

<form action="http://site.ru/4users/stats" method="POST">
<input type="TEXT" name="stat_login" value="" class="inp">
<input type="PASSWORD" name="stat_password" value="" class="inp">
<input type="submit" name="send" value="вход" class="btn">
</form>


Саня: Спасибо за подробности; иду переделывать под curl.

   
 
 автор: Shorr Kan   (03.08.2006 в 02:17)   письмо автору
 
   для: Саня   (03.08.2006 в 00:36)
 

Если вернуться к сокетам... Посмотрите хиддены в форме на сайте. Вполне вероятно, что там есть хидден с кукой или с сессией. То есть, нужно не

$data="stat_login=login&Submit=".urlencode('вход')."&stat_password=password"; 

а

$data="stat_login=login&Submit=".urlencode('вход')."&stat_password=password&PHPSESSID=".$sid; 

   
 
 автор: Саня   (03.08.2006 в 00:36)   письмо автору
 
   для: Саня   (03.08.2006 в 00:22)
 

Только в моём коде неточность есть одна. В старой версии библиотеки curl опция CURLOPT_COOKIE отсылает заголовок Cookie, а новая - Set-Cookiе.
Вот исправленный вариант:
<?php 
$headers
[] = "Accept: */*"
$headers[] = "Cookie: PHPSESSID=".$sid;
$data "stat_login=login&Submit=".urlencode('вход')."&stat_password=password"

$crl curl_init($host); 
curl_setopt($crlCURLOPT_POST1); // отправка методом POST 
curl_setopt($crlCURLOPT_USERAGENT"Opera"); 
curl_setopt($crlCURLOPT_REFERER"http://".$host."/"); 
curl_setopt($crlCURLOPT_HTTPHEADER$headers); // дополнительные заголовки 
curl_setopt($crlCURLOPT_POSTFIELDS$data); // данные для передачи 
curl_exec($crl); 
?>

   
 
 автор: Саня   (03.08.2006 в 00:22)   письмо автору
 
   для: Киналь   (03.08.2006 в 00:11)
 

Я правильно понял. что заголовки идут массивом?
Да. И не нужно добавлять перевод строки.
<?php
$hdr
[] = "Connection: close";
$hdr[] = "Accept: */*";
$hdr[] = "Заголовок: значение";
# и такой массив уже можно скармливать CURLOPT_HTTPHEADER

Только Accept, причем в таком виде?
Ну да, ведь всё остальное уже установлено при помощи curl_setopt(). А content-length само посчитается.

Браузер несколько длиннее отсылает=)
Какие хотите, такие и отсылайте.

И еще - где бы все-таки про curl почитать?
В официальной документации всё замечательно написано. Причём есть и на русском.
http://php.net/curl
http://php.net/curl-setopt - а тут и константы все расписаны, правда в английской версии побольше констант описано.

   
 
 автор: Киналь   (03.08.2006 в 00:11)   письмо автору
 
   для: Саня   (02.08.2006 в 23:10)
 

Спасибо, попробую. Только что записывать в $headers? Только Accept, причем в таком виде? Браузер несколько длиннее отсылает=) Я правильно понял. что заголовки идут массивом?
И еще - где бы все-таки про curl почитать? Посмотрел на phpclub'е и php.net - все примеры по-английски, константы не расшифрованы...

   
 
 автор: Саня   (02.08.2006 в 23:10)   письмо автору
 
   для: Киналь   (02.08.2006 в 20:09)
 

Так что там все-таки с curl?
<?php
$headers
[] = "Accept: */*";
$data "stat_login=login&Submit=".urlencode('вход')."&stat_password=password";

$crl curl_init($host);
curl_setopt($crlCURLOPT_POST1); // отправка методом POST
curl_setopt($crlCURLOPT_USERAGENT"Opera");
curl_setopt($crlCURLOPT_REFERER"http://".$host."/");
curl_setopt($crlCURLOPT_COOKIE"PHPSESSID=".$sid); // данные cookie
curl_setopt($crlCURLOPT_POSTFIELDS$data); // данные для передачи
curl_setopt($crlCURLOPT_HTTPHEADER$headers); // дополнительные заголовки
curl_exec($crl);
?>

   
 
 автор: Киналь   (02.08.2006 в 20:09)   письмо автору
 
   для: JIEXA   (02.08.2006 в 16:25)
 

Если бы все было так просто=) Нет, скрипт на чужом сервере.
На всякий случай объясню - никакого криминала, никого я не спамлю и не ломаю) Подключаюсь я к сайту своего провайдера, с мирной целью получить данные по собственному счету (ну там сколько метров трафика ушло и все такое прочее). Заодно и сокеты осваиваю)

   

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования