За последние 24 часа нас посетили 53407 программистов и 1720 роботов. Сейчас ищут 875 программистов ...

Мистика или что за..?

Тема в разделе "Прочие вопросы по PHP", создана пользователем Антон Т., 12 авг 2008.

  1. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    Имеется переменная $page, равная /about/index.php
    Если делаем во так:

    $out = "HEAD $page HTTP/1.1\r\n"; (это для сокетов)

    Бад реквест, а если сделаь так:

    $out = "HEAD /about/index.php HTTP/1.1\r\n";

    то работает. в чём может быть проблема?
     
  2. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    PHP:
    1.  
    2. $out = "HEAD $page HTTP/1.1\r\n";
    3. die($out);
    4.  
     
  3. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    гм :\
    PHP:
    1.  
    2. $out = "HEAD $page HTTP/1.1\r\n";
    3. $out .= "HOST: [url=http://www.yachter.ru]www.yachter.ru[/url]\r\n";
    4. $out .= "Connection: Close\r\n\r\n";
    5. die($out);
    6.  
    7. fwrite($fp, $out);
    8.  
    9. while (!feof($fp)) {
    10.     $arSock[] = fgets($fp, 1024*8);
    11. }
    12.  
    HEAD /about/form.php HTTP/1.1 HOST: www.yachter.ru Connection: Close

    вывел просто. что я не так делаю. и вообще про дай прочитать надо
     
  4. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    это же типа остановка скрипта с выводом сообщения, моего запроса. что за!? :/
     
  5. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    вывел нормально всё?
     
  6. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    ой. реклама получилась, извините..
     
  7. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    да, нормально вывел..
     
  8. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    выложи весь скрипт =)
    Зы. Не знаю чё за head =) попробуй ещё так GET $page HTTP/1.0
     
  9. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    PHP:
    1.  
    2. $fp = fsockopen("www.yachter.ru", 80, $errno, $errstr, 30);
    3.  
    4. if (!$fp) {
    5.     echo "$errstr ($errno)<br />\n";
    6. }
    7. else {
    8.     $link = $arURL[10]['LINK'];
    9.     $arLink = explode('yachter.ru', $link);
    10.     $page = $arLink[1];
    11.  
    12.     $out = "HEAD $page HTTP/1.1\r\n";
    13.     $out .= "HOST: [url=http://www.yachter.ru]www.yachter.ru[/url]\r\n";
    14.     $out .= "Connection: Close\r\n\r\n";
    15.    
    16.     $arSock = array();
    17.  
    18.     fwrite($fp, $out);
    19.  
    20.     while (!feof($fp)) {
    21.         $arSock[] = fgets($fp, 1024*8);
    22.     }
    23.     echo "<pre>"; print_r($arSock); echo '</pre>';
    24. }
    25.  
    26. fclose($fp);
    27.  
    $arURL - массив вида:
    [0] => [LINK] => "http://www.yachter.ru/*";
    ---=> [DATE] => ну это не важно..
    [1]
    [..]

    ----------------------
    короче в $page получается то что нужно :)
     
  10. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    а вообще мне нужно узнать просто, ест такая страница или нет..
    массив большой с ссылками.. и надо каждую проверить...
    суть этого скрипта, получать сформированный массив, и если count() больше 8 например, то значит есть странциа, а елси меньше - значит нет..
     
  11. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    точно то?
    выведи $page;
    попробуй $page =trim($arLink[1]);
    Ps. у меня работает всё...
     
  12. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    вар дамп выводил, стринг, без пробелов лишних
     
  13. Антон Т.

    Антон Т. Активный пользователь

    С нами с:
    11 авг 2008
    Сообщения:
    26
    Симпатии:
    0
    Адрес:
    г. Красногорск
    короче кодировки не равны.. мд5 хэши вывел.. надо переменную пейдж перевести нужную.
    спасибо за помощь :) Mr.M.I.T.