1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

помогите с чекером

Тема в разделе "Web Coding", создана пользователем dronix, 16 мар 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. dronix

    dronix Создатель

    Регистр.:
    28 янв 2008
    Сообщения:
    15
    Симпатии:
    0
    Чекер должен чекеть определенные валидные страницы но дальше у меня не что не получаться :(
    PHP:
    <?php
        
    //  {
            
    $ip '212.120.(0-255).(0-255)';
            
    $port 80;
            
    $valid_file 'good_spisok.txt';
            
    $timeout 1// sec
        // }
        
    $good_ip = array();
        
    preg_match('~([0-9]+\.[0-9]+\.[0-9]+\.)\(([0-9]+)-([0-9]+)\)~'$ip$regs);
        for(
    $i=$regs[2];$i<=$regs[3];$i++) {
            
    $nIP $regs[1].$i;
            
    $fp fsockopen($nIP$port$errno$errstr$timeout);
            if(
    $fp) {
                
    $good_ip[] = $nIP;
            }
            
    fclose($fp);
        }
        
    $fopen fopen($valid_file'w');
        
    fwrite($fopenimplode("\n"$good_ip));
        
    fclose($fopen);
    ?> 
     
  2. muzshura

    muzshura Постоялец

    Регистр.:
    27 фев 2008
    Сообщения:
    74
    Симпатии:
    3
    По-моему, тут ошибка:

    fwrite($fopen, implode("\n", $good_ip));

    И я бы поставил таймаут 10.

    Кстати, что все-таки не получается?
     
  3. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    что то я не понял суть работы скрипта

    поначалу был вариант -- обходить ip в заданном диапазоне и проверять валидность адресов

    но **х тогда регулрные выражения ? что за изврат
    опиши задачу
     
  4. dronix

    dronix Создатель

    Регистр.:
    28 янв 2008
    Сообщения:
    15
    Симпатии:
    0
    скрипт должен чекать валидные url
     
  5. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    ну и зачем тут регулярки ?
    Код:
    for($i1=0; $i1<=255; $i1++)
       for($i2=0; $i2<=255; $i2++) checkurl("212.120.$i1.$i2");
    
    и обходи в цикле
     
  6. dronix

    dronix Создатель

    Регистр.:
    28 янв 2008
    Сообщения:
    15
    Симпатии:
    0
    помогите написать пожалуйста )
     
  7. Dogmat

    Dogmat Постоялец

    Регистр.:
    16 фев 2007
    Сообщения:
    122
    Симпатии:
    38
    изъясняйся конкретнее.
    если не работает - то говори что именно не работает, какие сообщения об ошибках выводит и все в том же духе ...

    PHP:
    $ip '212.120.%d.%d';
    $port 80;
    $valid_file 'good_spisok.txt';
    $timeout 10;
    $good_ip = array();
    $errs=array();

    for(
    $i=0$i<=255;$i++) {
         for(
    $j=0$j<=255$j++){
               
    $nIP sprintf($ip,$i,$j);
               
    $fp fsockopen($nIP$port$errno$errstr$timeout);
               if(
    $fp) {
                    
    array_push($good_ip,$nIP);
                    
    fclose($fp);
               }else{
                    
    array_push($errs,$errno.':'.$errstr."\n");
               }
        }
    }
        
    $fopen fopen($valid_file'w');
        
    fwrite($fopenimplode("\n"$good_ip));
        
    fclose($fopen); 

        
    $fopen fopen($err_file'w');
        
    fwrite($fopenimplode("\n"$errs));
        
    fclose($fopen); 

    должно помочь
     
  8. dronix

    dronix Создатель

    Регистр.:
    28 янв 2008
    Сообщения:
    15
    Симпатии:
    0
    Он должен чекать валидные хосты на 80 порт с определеным каталогом или на существующий файл например http://1.1.1.1/index.php. Если хост оф лайн то должен сработать тайнаут и пропустить его.
     
  9. Dogmat

    Dogmat Постоялец

    Регистр.:
    16 фев 2007
    Сообщения:
    122
    Симпатии:
    38
    Пробуй то, что кинул :smmne:
     
    dronix нравится это.
  10. dronix

    dronix Создатель

    Регистр.:
    28 янв 2008
    Сообщения:
    15
    Симпатии:
    0
    Помогло но он чекает валид он лайн хостов на 80 порт а нада чтоб чекал валидные тачки с валидным запросом. Прим. http://1.1.1.1/test.php
     
Статус темы:
Закрыта.