Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как получить html через fsock

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): [1] 2 3 »   

> Без описания
sterwart
Отправлено: 17 Августа, 2011 - 13:51:30
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




скажите,как мне получить исходный код страницы с помощью fsockopen,что то не могу понять =)
 
 Top
Мелкий Супермодератор
Отправлено: 17 Августа, 2011 - 14:08:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Смотрите RFC 1945, RFC 2616. Протокол HTTP, иначе говоря.

cURL удобнее.


-----
PostgreSQL DBA
 
 Top
sterwart
Отправлено: 17 Августа, 2011 - 14:16:28
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




пробовал curl,он не выдает исходный..
(Добавление)
PHP:
скопировать код в буфер обмена
  1. $ch = curl_init('http://zalil.ru');
  2. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  3. echo curl_exec($ch);

вот этот код не работает ) библиотека включена !
 
 Top
EuGen Администратор
Отправлено: 17 Августа, 2011 - 14:25:48
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Например, "читать пока есть данные":
PHP:
скопировать код в буфер обмена
  1.  
  2.         $sProto = getprotobyname('tcp');
  3.         $rSocket    = socket_create(AF_INET, SOCK_STREAM, $sProto);
  4.         $sBuffer='';
  5.         if(socket_connect($rSocket, $sIP, $iPort))
  6.         {                
  7.            
  8.             while(true)
  9.             {
  10.                 $cTemp=socket_read($rSocket,1);
  11.                 if($cTemp==='' || $cTemp===false)
  12.                 {
  13.                     break;
  14.                 }
  15.                 else
  16.                 {
  17.                     $sBuffer.=$cTemp;
  18.                 }                
  19.             }
  20.         }
  21.         //$sBuffer содержит данные:
  22.         var_dump($sBuffer);
  23.  


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Мелкий Супермодератор
Отправлено: 17 Августа, 2011 - 14:29:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Маскируйтесь под пользователя. http://php.su/lessons/?lesson_11
Хост маскируется под 500.
(Добавление)
http://php.su/lessons/?lesson_11


-----
PostgreSQL DBA
 
 Top
LIME
Отправлено: 17 Августа, 2011 - 14:30:55
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




sterwart пишет:
вот этот код не работает ) библиотека включена !
работает
просто вы выводите в браузер полученый хтмл и браузер его конечно интерпретирует
поменяйте echo на var_dump

(Отредактировано автором: 17 Августа, 2011 - 14:32:03)

 
 Top
Мелкий Супермодератор
Отправлено: 17 Августа, 2011 - 14:35:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




LIME пишет:
просто вы выводите в браузер полученый хтмл и браузер его конечно интерпретирует

Там просто пустота в ответе. Что видно по curl_setopt ($ch, CURLOPT_HEADER, true);


-----
PostgreSQL DBA
 
 Top
LIME
Отправлено: 17 Августа, 2011 - 14:39:02
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Мелкий пишет:
Что видно по curl_setopt ($ch, CURLOPT_HEADER, true);
а где вы увидели эту опцию? вроде только ретурнтрансфер и потом echo
 
 Top
sterwart
Отправлено: 17 Августа, 2011 - 14:51:19
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




LIMEесли юзать заголовки,выдает

HTTP/1.1 500
Server: nginx/0.3.17
Date: Wed, 17 Aug 2011 11:49:41 GMT
Content-Type: text/html; charset=windows-1251
Transfer-Encoding: chunked
Connection: keep-alive

и все..
 
 Top
LIME
Отправлено: 17 Августа, 2011 - 14:57:22
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Мелкий sterwart у вас что шифрованный канал? ))
ну выше мелкий написал что делать
копируйте заголовки клиента
 
 Top
sterwart
Отправлено: 17 Августа, 2011 - 15:02:12
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




все!))) спасибо всем,все работает.!
 
 Top
LIME
Отправлено: 17 Августа, 2011 - 15:04:10
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




sterwart пишет:
спасибо всем,все работает.!
спасибо мало говори как решил ))
 
 Top
sterwart
Отправлено: 17 Августа, 2011 - 15:05:53
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




блин,опять проблема,ничего на решил )

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. $headers = array
  4. (
  5.     'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*;q=0.8',
  6.     'Accept-Language: ru,en-us;q=0.7,en;q=0.3',
  7.     'Accept-Encoding: deflate',
  8.     'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7'
  9. );
  10.      $ch = curl_init('http://zalil.ru/31567355');
  11.  
  12.       curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  13.       curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (бла бла бла..) ");
  14.       curl_setopt ($ch, CURLOPT_HEADER, $headers);
  15.       echo curl_exec($ch);
  16.  
  17.       curl_close($ch);
  18.  
  19.  



на ссылку zalil.ru исх выдает,
на zalil.ru/31567355 не выдает!

(Отредактировано автором: 17 Августа, 2011 - 15:07:29)

 
 Top
LIME
Отправлено: 17 Августа, 2011 - 15:11:05
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




возможно куки хочет
проверьте снова заголовки клиента
 
 Top
sterwart
Отправлено: 17 Августа, 2011 - 15:12:32
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




вот что выдает

HTTP/1.1 200 OK
Server: nginx/0.3.17
Date: Wed, 17 Aug 2011 12:10:53 GMT
Content-Type: text/html; charset=windows-1251
Transfer-Encoding: chunked
Connection: keep-alive



щас печенья ему попробую дать
(Добавление)
да нет,куки тоже не хочет,хм странна,В чем же проблема..
 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с сетью »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB