Немогу найти

Discussion in 'PHP' started by Cawabunga, 25 Jul 2007.

  1. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Люди помогите найти скрипт чтобы чекал,выставлял страну. примерно такой http://proxyzone.ru/index.php?option=com_realtime_proxy&Itemid=112
     
  2. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    http://webfile.ru/1479103
    Залил,проверь то или нет
     
    1 person likes this.
  3. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    А описание к нему можно ? есть может у каво ещё на подобе этого скрипты?
     
  4. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    А че там описывать,там просто функции/
    PHP:
    $gi geoip_open("./GeoIP.dat"GEOIP_STANDARD);
    $cn geoip_country_name_by_addr($gi,$ip);        
    geoip_close($gi);
    пример определения страны по IP
     
  5. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    мне нужно примерно так чтобы допустим я все прокси засунул в .txt файл залил на хост а скрипт чекал их и выставлял страны!
     
  6. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    PHP:
    $proxies file("proxy.txt");
    $gi geoip_open("./GeoIP.dat"GEOIP_STANDARD);

    for (
    $i 0$i count($proxies); $i++){
    $ip explode(":"$proxies[$i]);
    $cn geoip_country_name_by_addr($gi,$ip[0]);
    echo 
    $proxies[$i] . "->>>" $cn "</br>";
    };
    geoip_close($gi);
     
    #6 GoreMaster, 26 Jul 2007
    Last edited: 26 Jul 2007
  7. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Notice: Use of undefined constant GEOIP_STANDARD - assumed 'GEOIP_STANDARD' in q:\home\test2.ru\www\geoip.inc.php on line 24
    [ убрать подсказку | никогда больше не показывать ]

    Это предупреждение, вероятнее всего, возникает вследствие высокого уровня контроля ошибок в PHP, по умолчанию установленного в Денвере (E_ALL). Такой режим вывода ошибок является рекомендуемым и сильно помогает при отладке скриптов. Однако множество готовых скриптов требуют более низкого уровня ошибок.

    Вы можете установить более слабый контроль ошибок одним из следующих способов:

    Впишите в скрипты строчку:
    Error_Reporting(E_ALL & ~E_NOTICE);
    Этот способ особенно удобен, если в скрипте есть один файл (конфигурационный), который подключается всеми остальными.
    Рекомендуемый способ. Создайте в директории со скриптом файл .htaccess следующего содержания:
    php_value error_reporting 7
    Исправьте в /usr/local/php/php.ini значение error_reporting на E_ALL & ~E_NOTICE. Этот способ не является рекомендуемым и может привести к серьезным неудобствам при отладке!
    [Денвер: показать возможную причину ошибки]
    Notice: Use of undefined constant GEOIP_SHARED_MEMORY - assumed 'GEOIP_SHARED_MEMORY' in q:\home\test2.ru\www\geoip.inc.php on line 319


    Если тебе не тяжело можешь подогнять уже готовый ато я php почти не знаю
     
  8. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    PHP:
    <?php
    include_once("./geoIP.inc.php");
    $proxies file("proxy.txt");
    $gi geoip_open("./GeoIP.dat"GEOIP_STANDARD);

    for (
    $i 0$i count($proxies); $i++){
    $ip explode(":"$proxies[$i]);
    $cn geoip_country_name_by_addr($gi,$ip[0]);
    echo 
    $proxies[$i] . "->>>" $cn "</br>";
    };
    geoip_close($gi);
    ?>
    У меня этот скрипт пашет на ура
     
  9. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    плс выложи свой который у тебя пашет ато у меня руки из попы ростут :)
     
  10. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    Скрипт,который я выше выложил у меня и пашет на ура.
     
  11. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Я имею веду сразу подогноный под proxy.txt ато у меня не получается
     
  12. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    люди может у каво есть рабочий чекер на php?
     
  13. GoreMaster

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

    Joined:
    28 May 2007
    Messages:
    119
    Likes Received:
    32
    Reputations:
    4
    /thread39571-%CF%F0%EE%EA%F1%E8+%F7%E5%EA%E5%F0.html
     
  14. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Нужен чекер который из файла чекать будет
     
  15. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    Точнее php чекер который будет чекать из файла
     
  16. Cawabunga

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

    Joined:
    16 Apr 2007
    Messages:
    359
    Likes Received:
    165
    Reputations:
    -22
    ПОМОГИТЕ плс переделайте скрипт что бы он чекал не по форме а из файла proxy.txt буду очень благодарен!

    PHP:
    ?> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
    <head><title>Online proxy tester</title></head> 
    <body bgcolor="black" text="white"> 

    <?php 

    // Ensure that the timeouts from fsockopen don't get reported as errors (possible, depends on the php server config) 
       
    error_reporting(0); 
    // Limit the amount of proxies that can be tested at any one time 
       
    $maximum_proxies_to_test 5
    // Enter a password (if required) to protect the page 
       
    $password ''

    // Actual proxyjudge part of the page 
       
    function return_env_variables() 
       { 
          echo 
    '<pre>'."\n"
          foreach (
    $_SERVER as $header => $value 
          { 
            if ((
    strpos($header 'REMOTE')!== false || strpos($header 'HTTP')!== false || strpos($header 'REQUEST')!== false) && ( strpos($header 'HTTP_HOST') !== 0)) 
            { 
            echo 
    $header.' = '.$value."\n"
            } 
          } 
          echo 
    '</pre>'
       } 

    // Function to go away and get the page (calls through the proxy back to itself) 
       
    function get_judge_page($proxy
       { 
       
    // Depending on the server environment, this timeout setting may not be available.     
          
    $timeout 15
          
    $proxy_cont ''
          list(
    $proxy_host$proxy_port) = explode(":"$proxy); 
          
    $proxy_fp fsockopen($proxy_host$proxy_port$errornumber$errorstring$timeout); 
          if (
    $proxy_fp
          { 
             
    stream_set_timeout($proxy_fp$timeout); 
             
    fputs($proxy_fp"GET " $_SERVER['SCRIPT_NAME'] . "?test HTTP/1.0\r\nHost: " $_SERVER['SERVER_NAME'] . "\r\n\r\n"); 
             while(!
    feof($proxy_fp)) 
             { 
                   
    $proxy_cont .= fread($proxy_fp,4096); 
             } 
             
    fclose($proxy_fp); 
             
    $proxy_cont substr($proxy_contstrpos($proxy_cont,"\r\n\r\n")+4); 
          } 
          return 
    $proxy_cont;    
       } 

    // Check for the control string to see if it's a valid fetch of the judge 
       
    function check_valid_judge_response($page
       { 
          if(
    strlen($page) < 5
             return 
    false
          return 
    strpos($page'REMOTE_ADDR') !== false
       } 

    // Check for the IP addresses 
       
    function check_anonymity($page
       { 
          if(
    strpos($page$_SERVER['LOCAL_ADDR']) !== false
             return 
    false
          return 
    true
       } 

    // Takes and tests a proxy 
    // 0 - Bad proxy 
    // 1 - Good (non anon) proxy 
    // 2 - Good (anonymous) proxy 
       
    function test_proxy($proxy
       { 
          
    $page get_judge_page($proxy); 
          if(!
    check_valid_judge_response($page)) 
             return 
    0
          if(!
    check_anonymity($page)) 
             return 
    1
          return 
    2
       } 

    ////////// Main Page //////////// 

    // If this is a judge request, just return the environmental variables 
       
    if(getenv('QUERY_STRING') == "test"
       { 
          
    return_env_variables(); 
       } 
    // Else check whether we have been passed a list of proxies to test or not 
    // Should really use $_POST but it's been left as $HTTP_POST_VARS for older versions of php (3.x) 
       
    elseif( (isset($HTTP_POST_VARS['action']) && $HTTP_POST_VARS['action'] === 'fred') && 
               (isset(
    $HTTP_POST_VARS['proxies']) && $HTTP_POST_VARS['proxies'] != '') && 
               ( (
    strlen($password) == 0) || (isset($HTTP_POST_VARS['password']) && $HTTP_POST_VARS['password'] === $password) )) 
       { 
          
    $proxies explode("\n"str_replace("\r"""$HTTP_POST_VARS['proxies']), $maximum_proxies_to_test 1); 
           
       
    // Set the overall time limit for the page execution to 10 mins 
          
    set_time_limit(600); 
           
       
    // Set up some arrays to hold the results 
          
    $anon_proxies = array(); 
          
    $nonanon_proxies = array(); 
          
    $bad_proxies = array(); 
        
       
    // Loop through and test the proxies 
          
    for($thisproxy 0$thisproxy < ($maximum_proxies_to_test count($proxies) ? count($proxies) : $maximum_proxies_to_test); $thisproxy += 1
          { 
             echo 
    'Testing ' $proxies[$thisproxy] . ' .....'
             
    flush(); 
             switch(
    test_proxy($proxies[$thisproxy])) 
             { 
                case 
    2
                  echo 
    '.. Anon<br>' "\n"
                   
    $anon_proxies[count($anon_proxies)] = $proxies[$thisproxy]; 
                   break; 
                case 
    1
                  echo 
    '.. Non anon<br>' "\n"
                   
    $nonanon_proxies[count($nonanon_proxies)] = $proxies[$thisproxy]; 
                   break; 
                case 
    0
                  echo 
    '.. Dead<br>' "\n"
                   
    $bad_proxies[count($bad_proxies)] = $proxies[$thisproxy]; 
                   break; 
             } 
          } 
        
          echo 
    '<pre>'
          echo 
    '<br><b>Anonymous proxies</b>' "\n"
          for(
    $thisproxy 0$thisproxy count($anon_proxies); $thisproxy += 1
             echo 
    $anon_proxies[$thisproxy] . "\n"
          echo 
    '<br><b>Non-anonymous proxies</b>' "\n"
          for(
    $thisproxy 0$thisproxy count($nonanon_proxies); $thisproxy += 1
             echo 
    $nonanon_proxies[$thisproxy] . "\n"
          echo 
    '<br><b>Dead proxies</b>' "\n"
          for(
    $thisproxy 0$thisproxy count($bad_proxies); $thisproxy += 1
             echo 
    $bad_proxies[$thisproxy] . "\n"
          echo 
    '</pre>'
       } 
    // Just a blank call of the page - show the form for the user to fill in 
       
    else 
       { 
          echo 
    '<h2>Online Proxy checker</h2>' "\n"
          echo 
    '<h4>(http://' $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . ')</h4>' "\n"
          echo 
    'Enter up to a maximum of ' $maximum_proxies_to_test ' prox' . ($maximum_proxies_to_test == 'y' 'ies') . ' to test' "\n"
          echo 
    '<form method="POST" action="' $_SERVER['SCRIPT_NAME'] . '">' "\n"
          echo 
    '<input type="hidden" name="action" value="fred">' "\n"
          echo 
    '<textarea name="proxies" cols=35 rows=' $maximum_proxies_to_test '></textarea><br>' "\n"
          if(
    strlen($password) > 0)    
             echo 
    'Password: <input type="password" name="password" size="15"><br>' "\n"
          echo 
    '<input type="submit" value="Check proxies">' "\n"
          echo 
    '</form>' "\n"
       } 
    ?> 
    </body> 
    </html> 
     
  17. Gold3r

    Gold3r Member

    Joined:
    23 Mar 2007
    Messages:
    21
    Likes Received:
    7
    Reputations:
    5
    Стукни мне в аську 779497 . как бут время , и если никто те не переделает за ето время, я те помогу... ;)
     
    #17 Gold3r, 26 Jul 2007
    Last edited: 26 Jul 2007