[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Ch3ck

    Ch3ck Elder - Старейшина

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,191
    Reputations:
    430
    Повторюсь:
    Проверять линки на работоспособность данным методом неправильно. берешь файл с хостами обрезаешь в цикле все http:// и / чем-нипа
    PHP:
    $f=file("links.txt");
    foreach(
    $f AS $site) {
    $site=str_replace("http://"""$site);
    $site=str_replace("/"""$site);
    $site=trim($site); 
    И конектишься в этом же цикле.
    PHP:
    $site fsockopen($site,80); 
    Читаешь ответ, или просто смотришь на подключение есть оно или нет.
    Всё.
     
    #261 Ch3ck, 22 Jul 2007
    Last edited: 22 Jul 2007
    1 person likes this.
  2. D Mak

    D Mak Elder - Старейшина

    Joined:
    23 Jun 2007
    Messages:
    136
    Likes Received:
    27
    Reputations:
    0
    Не, неайс. Челу ведб нужно проверить валидность ссылок. А тут выдаст все адреса..
     
  3. Gho_st

    Gho_st Elder - Старейшина

    Joined:
    24 Jun 2005
    Messages:
    79
    Likes Received:
    9
    Reputations:
    3
    need help
    вобщем задача сделать скрипт
    который бы обращался к указанный странице
    через прокси

    мой код
    PHP:
    <?
    $site="";
    $proxy="";
    $proxy fsockopen("$proxy",3128);
    $otp fsockopen("$site",80);
    $d="GET / HTTP/1.0\n\n";
    fputs ($proxy,$otp,$d);
    ?>
    при запуске на хосте выдает


    Code:
    
    Warning: fsockopen() [function.fsockopen]: unable to connect to 203.106.52.102:3128 in /home/xakerov/public_html/npizzpak/proxy.php on line 3
    
    Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/xakerov/public_html/npizzpak/proxy.php on line 4
    
    Warning: fsockopen() [function.fsockopen]: unable to connect to http://npizzpak.xakerov.org/snif.php:80 in /home/xakerov/public_html/npizzpak/proxy.php on line 4
    
    Warning: fputs(): supplied argument is not a valid stream resource in /home/xakerov/public_html/npizzpak/proxy.php on line 6
    
     
  4. Ni0x

    Ni0x Elder - Старейшина

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Gho_st, если нужна поддержка прокси, проще всего использовать CURL.
    http://www.phpclub.ru/detail/article/curl
     
  5. GoreMaster

    GoreMaster Elder - Старейшина

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    Для работы с SOCKS на форуме была тема,там гема выкладывал свою либу,плюс тут недавно Great выкладывал свою функцию для работы с SOCKS 5
    используй поиск
     
  6. Gho_st

    Gho_st Elder - Старейшина

    Joined:
    24 Jun 2005
    Messages:
    79
    Likes Received:
    9
    Reputations:
    3
    побывал разные функции и либы
    почему то всё время возникают проблемы с коннектом проксика через Сокеты
    как на хосте так и на локалхосте

    п. с.
    прокси стопудова рабочие
     
  7. xaker-boss

    xaker-boss Elder - Старейшина

    Joined:
    6 Mar 2007
    Messages:
    251
    Likes Received:
    49
    Reputations:
    -11
    Люди кто может написать такой скрипт на php чтобы в водиш сылку а он скачивает фаил и ложет его в том же мести где и лежит сам скрипт?
    очень надо плиз
     
  8. TANZWUT

    TANZWUT Крёстный отец :)

    Joined:
    22 Jun 2005
    Messages:
    1,474
    Likes Received:
    716
    Reputations:
    744
    http://rapidget.linux.spb.ru/index.php?info какраз то что надо.. и ненадо изобретать велосипед... подробное описание на сайте
     
    _________________________
    1 person likes this.
  9. TANZWUT

    TANZWUT Крёстный отец :)

    Joined:
    22 Jun 2005
    Messages:
    1,474
    Likes Received:
    716
    Reputations:
    744

    http://usfree.chat.ru/browser.txt неплохой анонимайзер...

    по поводу проксей, попробуй юзать из готовых примеров, типа:
    http://www.milw0rm.com/exploits/4106
    http://www.milw0rm.com/exploits/4098
    http://www.milw0rm.com/exploits/3998
    таких примеров очень много....
    http://www.google.ru/search?hl=ru&newwindow=1&q=site%3Amilw0rm.com+intext%3A%22proxy_regex%22%
     
    _________________________
    1 person likes this.
  10. Dr.Frank

    Dr.Frank Elder - Старейшина

    Joined:
    31 Jul 2002
    Messages:
    301
    Likes Received:
    72
    Reputations:
    12
    2 Gho_st

    Здесь просто нет коннекта к хосту:
    Code:
    Warning: fsockopen() [function.fsockopen]: unable to connect to 203.106.52.102:3128 in /home/xakerov/public_html/npizzpak/proxy.php on line 3
    
    Здесь(fsockopen) надо вводить только хост, без http:// и названия скритпа, например npizzpak.xakerov.org:
    Code:
    Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/xakerov/public_html/npizzpak/proxy.php on line 4
    Warning: fsockopen() [function.fsockopen]: unable to connect to http://npizzpak.xakerov.org/snif.php:80 in /home/xakerov/public_html/npizzpak/proxy.php on line 4
    
     
    1 person likes this.
  11. Cawabunga

    Cawabunga Elder - Старейшина

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Люди плс подскажите прогу для написания php только не Notepad ++
     
    1 person likes this.
  12. Iceangel_

    Iceangel_ Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    494
    Likes Received:
    532
    Reputations:
    158
    Я пользуюсь PHP Edit (v 1.0.0)
    Оф сайт http://svoi.net/phpedit/
     
  13. n1†R0x

    n1†R0x Elder - Старейшина

    Joined:
    20 Jan 2007
    Messages:
    728
    Likes Received:
    376
    Reputations:
    235
    Мне понравилась PHP Designer 2007, для больших проектов очень удобна.
    А вообще тема подобная была, поиск.
     
  14. DWORD

    DWORD Elder - Старейшина

    Joined:
    24 Jul 2007
    Messages:
    129
    Likes Received:
    70
    Reputations:
    -36
    svoi.NET PHP Edit глючная опасная прога... Глюки у нее не просто какие, а будь здоров - может целые файлы вам похерить, глазом не моргнет.

    Сам сейчас пользую PHP Expert Editor, при настройке малой - вполне хорош. Но рекомендовать никому не буду ничего, ибо сам я пользуюсь потому что меня пока устраивает, а альтернатив я пробовал не так много.
     
  15. spamoney

    spamoney Elder - Старейшина

    Joined:
    26 Dec 2006
    Messages:
    120
    Likes Received:
    7
    Reputations:
    1
    Такой вот вопрос, нужен скрипт что бы узнать существует ли файл на удаленном сервере и если существует нужно узнать его размер в байтах, залез на http://ru2.php.net/file_exists но эта функция вроде работает только на твоём сервере, а мне нужно что б на удаленном.......
     
  16. spamoney

    spamoney Elder - Старейшина

    Joined:
    26 Dec 2006
    Messages:
    120
    Likes Received:
    7
    Reputations:
    1
    Вот что выдаёт
    PHP:
    WarningCall-time pass-by-reference has been deprecated argument passed by value; If you would like to pass it by referencemodify the declaration of fsockopen(). If you would like to enable call-time pass-by-referenceyou can set allow_call_time_pass_reference to true in your INI fileHoweverfuture versions may not support this any longerin /home/*****/******.ru/script.php on line 9

    Warning
    Call-time pass-by-reference has been deprecated argument passed by value; If you would like to pass it by referencemodify the declaration of fsockopen(). If you would like to enable call-time pass-by-referenceyou can set allow_call_time_pass_reference to true in your INI fileHoweverfuture versions may not support this any longerin /home/****/*****.net.ru/script.php on line 9
     
  17. DWORD

    DWORD Elder - Старейшина

    Joined:
    24 Jul 2007
    Messages:
    129
    Likes Received:
    70
    Reputations:
    -36
    Если нет сокетов на сервере, можно просто fopen'ом открыть, если файла на сервере нету - fopen вернет ошибку и ее можно будет поймать ласт еррором (404/403 и т.д.), только чтобы размер файла узнать придется считывать этот файл целиком..
     
  18. spamoney

    spamoney Elder - Старейшина

    Joined:
    26 Dec 2006
    Messages:
    120
    Likes Received:
    7
    Reputations:
    1
    Вродь сокеты включены

    Sockets

    Sockets Support enabled


    allow_call_time_pass_reference Off Off
    allow_url_fopen On On
     
  19. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    DWORD, при чём тут есть или нету сокет? Ты сообщения об ошибке читал? Просто на серваке почему-то запрещена передача параметров в функции по ссылке... Происходит это на моменте fsockopen($hostname, 80, &$errnr, &$errstr)... Два последних параметра как видно передаются по ссылке... Выхода четыре:
    1) Отказаться от этих параметров, тогда код будет выглядить таким образом: $fp = fsockopen($hostname, 80) or die("Couldn't connect to target host");
    2) Прописать строчку в php.ini allow_call_time_pass_reference = 1 если у тебя есть доступ туда;
    3) Добавить в файл .htaccess сайта строчку php_flag allow_call_time_pass_reference 1;
    4) Добавить вначале скрипта: ini_set("allow_call_time_pass_reference", 1);
     
    1 person likes this.
  20. spamoney

    spamoney Elder - Старейшина

    Joined:
    26 Dec 2006
    Messages:
    120
    Likes Received:
    7
    Reputations:
    1
    Вот так получилось
    PHP:
    <?php

    $hostname 
    "suit.ru"// units.ru - имя сервера 
    $filename "/download/74/84/file.3gp"// интересующий на сервере файл 
    get_size($hostname$filename); 
    function 
    get_size($hostname$filename

        
    $end false
        
    $fp fsockopen($hostname80) or die("Couldn't connect to target host"); 
        
    fputs($fp,"HEAD ".$filename." HTTP/1.0\n\n"); 
        while (!
    $end) { 
            
    $line fgets($fp2048); 
            if (
    trim($line) == "") { 
                
    $end true
            } else { 
                
    $str explode(": "$line); 
                if (
    $str[0] == "Content-Length") { 
                    
                } 
    echo 
    "<font color=red><br>Size of ".$filename." file ".$str[1]." bytes</font>";
            } 

        } 

        
    fclose($fp); 
    }
    ?>


    Всё спасибо, работает, но скрипт выводит уж слишком много информации о фaйле
    PHP:
    Size of /download/74/84/file.3gp file bytes
    Size of 
    /download/74/84/file.3gp file Mon30 Jul 2007 10:53:48 GMT bytes
    Size of 
    /download/74/84/file.3gpfile Apache/2.0.59 (Unixbytes
    Size of 
    /download/74/84/file.3gp file Wed25 Jul 2007 18:22:33 GMT bytes
    Size of 
    /download/74/84/file.3gp file "269c00f-361b82-97f04c40" bytes
    Size of 
    /download/74/84/file.3gp file bytes bytes
    Size of 
    /download/74/84/file.3gp file 3545986 bytes
    Size of 
    /download/74/84/file.3gp file close bytes
    Size of 
    /download/74/84/file.3gp file video/3gp bytes
    А нужен только его размер.....
     
Thread Status:
Not open for further replies.