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

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

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

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    А это не здесь задавай. Тут вопросы по PHP, а не по движкам.
     
  2. Spaise

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

    Joined:
    21 Mar 2008
    Messages:
    33
    Likes Received:
    5
    Reputations:
    0
    Сделай как блок рекламы, ну и в шаблоне тег рекламы не забудь.

    Люди, подскажите пожалуйста любой готовый простенький пример авторизации PHP+CURL с cookie.
     
    1 person likes this.
  3. heretic1990

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

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    вобще делаю скрипт накрутки хостов. но он чегото не работает, я вроде всё сделал правильно. в чём ошибка? поправте пожалуйста!

    PHP:
    <?php
    function error$error false )
    {
        
    header"Expires: Thu, 19 Feb 1998 13:24:18 GMT" );
        
    header"Last-Modified: ".gmdate"D, d M Y H:i:s" )." GMT" );
        
    header"Cache-Control: no-cache, must-revalidate" );
        
    header"Cache-Control: post-check=0, pre-cache=0" );
        
    header"Cache-Control: max-age=0" );
        
    header"Pragma: no-cache" );
        
    header"Content-Type: text/html; charset=windows-1251" );
        
    $rand mt_rand099999 );
        echo 
    "<html>\r\n
    <head>\r\n
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" />
    <title>Накрутка хостов</title>\r\n
    </head>\r\n
    <body>\r\n
    <form action=\"index.php\" method=\"post\">\r\n"
    ;
        if ( 
    $error == "agents" )
        {
            echo 
    "<b>Файл с браузерами недоступен или пуст!</b><br/>\n";
        }
        if ( 
    $error == "proxys" )
        {
            echo 
    "<b>Файл с прокси адресами недоступен или пуст!</b><br/>\n";
        }
        echo 
    "Количество хостов:<br/>\n";
        if ( 
    $error == "kol" )
        {
            echo 
    "Мин:1 Макс:10000<br/>\n";
        }
        echo 
    "<input name=\"kol\" type=\"text\" value=\"100\" maxlength=\"5\" size=\"5\" /><br/>\r\nАдрес:<br/>\n";
        if ( 
    $error == "link" )
        {
            echo 
    "Не корректно!<br/>\n";
        }
        echo 
    "<input name=\"link\" type=\"text\" value=\"http://\" maxlength=\"100\" /><br/>\r\nМакс. время соединений:<br/>\n";
        if ( 
    $error == "time" )
        {
            echo 
    "Мин:1 Макс:30<br/>\n";
        }
        echo 
    "<input name=\"time\" type=\"text\" value=\"10\" maxlength=\"2\" size=\"2\" /><br/>\r\nМетод передачи:<br/>\n";
        if ( 
    $error == "method" )
        {
            echo 
    "GET или POST<br/>\n";
        }
        echo 
    "<select name=\"method\">\r\n
    <option value=\"1\">GET</option>\r\n
    <option value=\"2\">POST</option>\r\n
    </select><br/>\r\nПротокол передачи:<br/>\n"
    ;
        if ( 
    $error == "protokol" )
        {
            echo 
    "HTTP/1.0 или HTTP/1.1<br/>\n";
        }
        echo 
    "<select name=\"protoko\">\r\n
    <option value=\"1\">HTTP/1.0</option>\r\n
    <option value=\"2\">HTTP/1.1</option>\r\n
    </select><br/>\r\nСоединение:<br/>\n"
    ;
        if ( 
    $error == "connection" )
        {
            echo 
    "Close или Keep-Alive<br/>\n";
        }
        echo 
    "<select name=\"connection\">\r\n
    <option value=\"1\">Close</option>\r\n
    <option value=\"2\">Keep-Alive</option>\r\n
    </select><br/>\r\nВыбор телефона:<br/>\n"
    ;
        if ( 
    $error == "agent" )
        {
            echo 
    "случайно или по порядку<br/>\n";
        }
        echo 
    "<select name=\"agent\">\r\n
    <option value=\"1\">случайно</option>\r\n
    <option value=\"2\">по порядку</option>\r\n
    </select><br/>\r\nВыбор прокси:<br/>\n"
    ;
        if ( 
    $error == "proxy" )
        {
            echo 
    "случайно или по порядку<br/>\n";
        }
        echo 
    "<select name=\"proxy\">\r\n
    <option value=\"1\">случайно</option>\r\n
    <option value=\"2\">по порядку</option>\r\n
    </select><br/>\r\n<input name=\"submit\" type=\"submit\" value=\"Крутить\">\r\n
    </form>\r\n

    </body>\r\n
    </html>\n"
    ;
    }

    error_reporting);
    $kol intval$_POST['kol'] );
    $link $_POST['link'];
    $time intval$_POST['time'] );
    $method intval$_POST['method'] );
    $protokol intval$_POST['protokol'] );
    $connection intval$_POST['connection'] );
    $agent intval$_POST['agent'] );
    $proxy intval$_POST['proxy'] );
    $agents = array( );
    $proxys = array( );
    $agents file"agents.txt" );
    $proxys file"proxys.txt" );
    $cagents count$agents );
    $cproxys count$proxys );
    if ( empty( 
    $kol ) || empty( $link ) || empty( $time ) || empty( $method ) || empty( $protokol ) || empty( $connection ) )
    {
        
    error( );
    }
    else if ( 
    $kol || 10000 $kol )
    {
        
    error"kol" );
    }
    else if ( 
    strlen$link ) < 15 || 100 strlen$link ) || substr$link0) !== "http://" )
    {
        
    error"link" );
    }
    else if ( 
    $time || 30 $time )
    {
        
    error"time" );
    }
    else if ( 
    $method || $method )
    {
        
    error"method" );
    }
    else if ( 
    $protokol || $protokol )
    {
        
    error"protokol" );
    }
    else if ( 
    $connection || $connection )
    {
        
    error"connection" );
    }
    else if ( 
    $agent || $agent )
    {
        
    error"agent" );
    }
    else if ( 
    $proxy || $proxy )
    {
        
    error"proxy" );
    }
    else if ( 
    $cagents )
    {
        
    error"agents" );
    }
    else if ( 
    $cproxys )
    {
        
    error"proxys" );
    }
    else
    {
        
    $na = -1;
        
    $np = -1;
        
    $link substr$link);
        
    $host strtok$link"/" );
        if ( 
    $host == false )
        {
            
    $host $link;
        }
        if ( 
    $method == )
        {
            
    $method "GET";
        }
        else
        {
            
    $method "POST";
        }
        if ( 
    $protokol == )
        {
            
    $protokol "HTTP/1.0";
        }
        else
        {
            
    $protokol "HTTP/1.1";
        }
        if ( 
    $connection == )
        {
            
    $connection "Close";
        }
        else
        {
            
    $connection "Keep-Alive";
        }
        
    $i 0;
        for ( ; 
    $i $kol; ++$i )
        {
            if ( 
    $agent == )
            {
                
    $na mt_rand0$cagents );
            }
            else
            {
                ++
    $na;
            }
            if ( 
    $proxy == )
            {
                
    $np mt_rand0$cproxys );
            }
            else
            {
                ++
    $np;
            }
            if ( 
    $cagents <= $na )
            {
                
    $na 0;
            }
            if ( 
    $cproxys <= $np )
            {
                
    $np 0;
            }
            
    $a trim$agents[$na] );
            
    $p trim$proxys[$np] );
            if ( empty( 
    $a ) || empty( $p ) )
            {
            }
            else
            {
                
    $hd "{$method} http://{$link} {$protokol}\r\n";
                
    $hd .= "Host: {$host}\r\n";
                
    $hd .= "Proxy-Connection: {$connection}\r\n";
                
    $hd .= "User-Agent: {$a}\r\n\r\n";
                
    $p explode":"$p );
                
    $sock trim$p['0'] );
                
    $port trim$p['1'] );
                if ( empty( 
    $sock ) || empty( $port ) )
                {
                }
                else
                {
                    
    $fo fsockopen$sock$port$er1$er2$time );
                    
    fputs$fo$hd );
                }
            }
        }
        
    $text "";
        while ( !
    feof$fo ) )
        {
            
    $text .= fgets$fo1024 );
        }
        
    $hd substr$text0strpos$text"\r\n\r\n" ) );
        
    $text substr$textstrpos$text"\r\n\r\n" ) + );
        if ( 
    $powered strtokstrstr$hd"X-Powered-By:" ), "\r\n" ) )
        {
            
    header$powered );
        }
        if ( 
    $cache strtokstrstr$hd"Cache-Control:" ), "\r\n" ) )
        {
            
    header$cache );
        }
        if ( 
    $expires strtokstrstr$hd"Expires:" ), "\r\n" ) )
        {
            
    header$expires );
        }
        if ( 
    $pragma strtokstrstr$hd"Pragma:" ), "\r\n" ) )
        {
            
    header$pragma );
        }
        if ( 
    $modified strtokstrstr$hd"Last-Modified:" ), "\r\n" ) )
        {
            
    header$modified );
        }
        if ( 
    $type strtokstrstr$hd"Content-Type:" ), "\r\n" ) )
        {
            
    header$type );
        }
        if ( 
    $disposition strtokstrstr$hd"Content-Disposition:" ), "\r\n" ) )
        {
            
    header$disposition );
        }
        if ( 
    $etag strtokstrstr$hd"ETag:" ), "\r\n" ) )
        {
            
    header$etag );
        }
        if ( 
    $ranges strtokstrstr$hd"Accept-Ranges:" ), "\r\n" ) )
        {
            
    header$ranges );
        }
        exit( 
    $text );
    }
    ?>
     
  4. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Редкий говнокод

    1) Отдели HTML от PHP
    2) Вместо If используй switch

    ^- Повысит шансы найти проблему

    3) Перепишы на CURL, чтобы непариться отладкой и чтобы уменьшить на порядок код
     
  5. heretic1990

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

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    я старался :D :D :D
     
  6. DTW

    DTW Banned

    Joined:
    11 May 2008
    Messages:
    221
    Likes Received:
    52
    Reputations:
    11
    КАк выйти из рекурсии

    PHP:
     function Findurl($http,$path,$lv=0)
     {

      
    $curl curl_init($http.$path);
     
    // Параметры соединения
     
    curl_setopt($curlCURLOPT_RETURNTRANSFER,1);
     
    curl_setopt($curlCURLOPT_USERAGENT'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060516 SeaMonkey/1.0.2'); 
     
    // Получаем соедржимое страницы
     
    $id2 curl_exec($curl);
     
    curl_close($curl);
     
    //ищем ссылки на обьявления
     
    $pat2 '#href=\"(\d+\.html)\"#im';  
     
    $total preg_match_all($pat2,$id2,$poc2) ;
     
    //echo("<pre>");
     //print_r($poc2[1]);
     // echo("</pre>");
      
      
    for($i=0$i $total-1;  $i++) {
      
      if(
    cheak($poc2[1][$i],'url','link')) {
        
    links($poc2[1][$i]);
      }
       
     }
            
       
    $pats3='#href=\"(table\d+\.html)\"#im';       
      
    $tot preg_match_all($pats3$id2,$pock);
       echo(
    "<pre>");
            
    print_r($pock[1]);
       echo(
    "</pre>"); 
          
           if(
    $lv $tot) {
         for(
    $i=0$i $tot ;  $i++)
         {
     
    Findurl('http://site.ws/page/'.$pock[1][$i],$lv+1);
         }      
      
           } 
           
    }
    Допутим там линков на 20 страниц

    как сделать что он повторно не ходил по линкам

    у меня все зацыкливаеться?
    ------------------------------------
    Все решил создал таблицу туда все страницы вбил

    после завершение раб фун вызываю фун для удаление страниц из таблицы
     
    #10806 DTW, 16 Jul 2009
    Last edited: 16 Jul 2009
  7. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Вести историю переходов в массиве, потом при переходе проверять in_array
     
  8. sNt

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

    Joined:
    30 Jul 2008
    Messages:
    117
    Likes Received:
    11
    Reputations:
    1
    Имхо если их куда-то записывать и проверять, была ли такая уже в рамках данного цикла (или вообще все их писать)
     
  9. j0ker13

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

    Joined:
    28 Jul 2008
    Messages:
    199
    Likes Received:
    16
    Reputations:
    5
    такой код
    в обоих таблицах столбик ид.
    надо вывести ид из первой таблицы а он выводит из второй. так не помогает $row['tableA.id']
    как сделать?)
     
  10. sNt

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

    Joined:
    30 Jul 2008
    Messages:
    117
    Likes Received:
    11
    Reputations:
    1
    To heretic1990:

    PHP:
    <?php 

    function error$error false 

        
    header"Expires: Thu, 19 Feb 1998 13:24:18 GMT" ); 
        
    header"Last-Modified: ".gmdate"D, d M Y H:i:s" )." GMT" ); 
        
    header"Cache-Control: no-cache, must-revalidate" ); 
        
    header"Cache-Control: post-check=0, pre-cache=0" ); 
        
    header"Cache-Control: max-age=0" ); 
        
    header"Pragma: no-cache" ); 
        
    header"Content-Type: text/html; charset=windows-1251" ); 
        
    $rand mt_rand099999 ); 
        echo 
    "<html>\r\n 
    <head>\r\n 
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" /> 
    <title>Накрутка хостов</title>\r\n 
    </head>\r\n 
    <body>\r\n 
    <form action=\"test.php\" method=\"post\">\r\n"


        if ( 
    $error == "agents" 
        { 
            echo 
    "<b>Файл с браузерами недоступен или пуст!</b><br/>\n"
        } 
        if ( 
    $error == "proxys" 
        { 
            echo 
    "<b>Файл с прокси адресами недоступен или пуст!</b><br/>\n"
        } 
        echo 
    "Количество хостов:<br/>\n"
        if ( 
    $error == "kol" 
        { 
            echo 
    "Мин:1 Макс:10000<br/>\n"
        } 
        echo 
    "<input name=\"kol\" type=\"text\" value=\"100\" maxlength=\"5\" size=\"5\" /><br/>\r\nАдрес:<br/>\n"
        if ( 
    $error == "link" 
        { 
            echo 
    "Не корректно!<br/>\n"
        } 
        echo 
    "<input name=\"link\" type=\"text\" value=\"http://\" maxlength=\"100\" /><br/>\r\nМакс. время соединений (секунд):<br/>\n"
        if ( 
    $error == "time" 
        { 
            echo 
    "Мин:1 Макс:30<br/>\n"
        } 
        echo 
    "<input name=\"time\" type=\"text\" value=\"10\" maxlength=\"2\" size=\"2\" /><br/>\r\nМетод передачи:<br/>\n"
        if ( 
    $error == "method" 
        { 
            echo 
    "GET или POST<br/>\n"
        } 
        echo 
    "<select name=\"method\">\r\n 
    <option value=\"GET\">GET</option>\r\n 
    <option value=\"POST\">POST</option>\r\n 
    </select><br/>\r\nПротокол передачи:<br/>\n"

        if ( 
    $error == "protokol" 
        { 
            echo 
    "HTTP/1.0 или HTTP/1.1<br/>\n"
        } 
        echo 
    "<select name=\"protokol\">\r\n 
    <option value=\"HTTP/1.0\">HTTP/1.0</option>\r\n 
    <option value=\"HTTP/1.1\">HTTP/1.1</option>\r\n 
    </select><br/>\r\nСоединение:<br/>\n"

        if ( 
    $error == "connection" 
        { 
            echo 
    "Close или Keep-Alive<br/>\n"
        } 
        echo 
    "<select name=\"connection\">\r\n 
    <option value=\"Close\">Close</option>\r\n 
    <option value=\"Keep-Alive\">Keep-Alive</option>\r\n 
    </select><br/>\r\nВыбор телефона:<br/>\n"

        if ( 
    $error == "agent" 
        { 
            echo 
    "случайно или по порядку<br/>\n"
        } 
        echo 
    "<select name=\"agent\">\r\n 
    <option value=\"1\">случайно</option>\r\n 
    <option value=\"2\">по порядку</option>\r\n 
    </select><br/>\r\nВыбор прокси:<br/>\n"

        if ( 
    $error == "proxy" 
        { 
            echo 
    "случайно или по порядку<br/>\n"
        } 
        echo 
    "<select name=\"proxy\">\r\n 
    <option value=\"1\">случайно</option>\r\n 
    <option value=\"2\">по порядку</option>\r\n 
    </select><br/>\r\n<input name=\"submit\" type=\"submit\" name=\"start\" value=\"Крутить\">\r\n 
    </form>\r\n 

    </body>\r\n 
    </html>\n"



    error_reporting); 
    $kol intval$_POST['kol'] ); 
    $link $_POST['link']; 
    $time intval$_POST['time'] ); 
    $method $_POST['method']; 
    $protokol $_POST['protokol']; 
    $connection $_POST['connection']; 
    $agent intval$_POST['agent'] ); 
    $proxy intval$_POST['proxy'] ); 
    $agents = array( ); 
    $proxys = array( ); 
    $agents file"agents.txt" ); 
    $proxys file"proxys.txt" ); 
    $cagents count$agents ); 
    $cproxys count$proxys ); 
    if ( empty( 
    $kol ) || empty( $link ) || empty( $time ) || empty( $method ) || empty( $protokol ) || empty( $connection ) ) 

        
    error( ); 

    else if ( 
    $kol || 10000 $kol 

        
    error"kol" ); 

    else if ( 
    strlen$link ) < 15 || 100 strlen$link ) || substr$link0) !== "http://" 

        
    error"link" ); 

    else if ( 
    $time || 30 $time 

        
    error"time" ); 

    else if ( 
    $method || $method 

        
    error"method" ); 

    else if ( 
    $protokol || $protokol 

        
    error"protokol" ); 

    else if ( 
    $connection || $connection 

        
    error"connection" ); 

    else if ( 
    $agent || $agent 

        
    error"agent" ); 

    else if ( 
    $proxy || $proxy 

        
    error"proxy" ); 

    else if ( 
    $cagents 

        
    error"agents" ); 

    else if ( 
    $cproxys 

        
    error"proxys" ); 

    else 

        
    $na = -1
        
    $np = -1
        
    $link substr$link); 
        
    $host strtok$link"/" ); 
        if ( 
    $host == false 
        { 
            
    $host $link
        } 
        if ( 
    $method == 
        { 
            
    $method "GET"
        } 
        else 
        { 
            
    $method "POST"
        } 
        if ( 
    $protokol == 
        { 
            
    $protokol "HTTP/1.0"
        } 
        else 
        { 
            
    $protokol "HTTP/1.1"
        } 
        if ( 
    $connection == 
        { 
            
    $connection "Close"
        } 
        else 
        { 
            
    $connection "Keep-Alive"
        } 
        
    $i 0
        for ( ; 
    $i $kol; ++$i 
        { 
            if ( 
    $agent == 
            { 
                
    $na mt_rand0$cagents ); 
            } 
            else 
            { 
                ++
    $na
            } 
            if ( 
    $proxy == 
            { 
                
    $np mt_rand0$cproxys ); 
            } 
            else 
            { 
                ++
    $np
            } 
            if ( 
    $cagents <= $na 
            { 
                
    $na 0
            } 
            if ( 
    $cproxys <= $np 
            { 
                
    $np 0
            } 
            
    $a trim$agents[$na] ); 
            
    $p trim$proxys[$np] ); 
            if ( empty( 
    $a ) || empty( $p ) ) 
            { 
            } 
            else 
            { 

            } 
        } 
        
    $text ""
        while ( !
    feof$fo ) ) 
        { 
            
    $text .= fgets$fo1024 ); 
        } 
        
    $hd substr$text0strpos$text"\r\n\r\n" ) ); 
        
    $text substr$textstrpos$text"\r\n\r\n" ) + ); 
        if ( 
    $powered strtokstrstr$hd"X-Powered-By:" ), "\r\n" ) ) 
        { 
            
    header$powered ); 
        } 
        if ( 
    $cache strtokstrstr$hd"Cache-Control:" ), "\r\n" ) ) 
        { 
            
    header$cache ); 
        } 
        if ( 
    $expires strtokstrstr$hd"Expires:" ), "\r\n" ) ) 
        { 
            
    header$expires ); 
        } 
        if ( 
    $pragma strtokstrstr$hd"Pragma:" ), "\r\n" ) ) 
        { 
            
    header$pragma ); 
        } 
        if ( 
    $modified strtokstrstr$hd"Last-Modified:" ), "\r\n" ) ) 
        { 
            
    header$modified ); 
        } 
        if ( 
    $type strtokstrstr$hd"Content-Type:" ), "\r\n" ) ) 
        { 
            
    header$type ); 
        } 
        if ( 
    $disposition strtokstrstr$hd"Content-Disposition:" ), "\r\n" ) ) 
        { 
            
    header$disposition ); 
        } 
        if ( 
    $etag strtokstrstr$hd"ETag:" ), "\r\n" ) ) 
        { 
            
    header$etag ); 
        } 
        if ( 
    $ranges strtokstrstr$hd"Accept-Ranges:" ), "\r\n" ) ) 
        { 
            
    header$ranges ); 
        } 
        exit( 
    $text ); 


    if(
    $_POST['link']) {
    $str=str_replace("http://"""$link);
    $srv=substr($str,0,strpos($str,"/"));

    for(
    $i=0$i<$kol$i++) {
    $fp fsockopen($srv'80'$er1$er2$time);     

    if (
    $fp
        {   
          
    $hd  "".$method." ".$link." ".$protokol."\n"
          
    $hd .= "Content-Length: 0\n\n";
          
    $hd .= "Proxy-Connection: $connection\r\n"
          
    $hd .= "User-Agent: Win98, MSIE\r\n\r\n";
       

          
    fwrite($fp$hd);   
          
    $line='';  
          while (!
    feof($fp))  
          {   
            
    $line .= fgets($fp1024);   
          }   
          
    fclose($fp);   

           

                } 
                }
    }

    ?>
    Код просто ппц. Я чуть руки не сломал себе. Вообще не могу понять, как ты его писал? Сначала пишем, потом проверяем? Там столько трабл, то можно сделать вывод, что ты толком скрипт и не тестил, тупо отстрочил, а потом "что у меня не работает". Мой тебе совет: перепиши код, не позорься. Столько глупых затей реализовал, совершенно непонятных. Например: нафига при выборе той или иной функции, ты присваивал ей число (1 или 0), потом ещё делал распознание, что там там значит единица, что нолик, когда можно было бы сразу вставлять в отсылку заголовоков полученный результат? В общем, я плакаль. С таким кодом не каждый хочет иметь дело, так что тебе ОЧЕНЬ повезло.
     
    #10810 sNt, 16 Jul 2009
    Last edited: 17 Jul 2009
    1 person likes this.
  11. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    PHP:
    $result=mysql_query('SELECT * FROM tableA INNER JOIN tableB ON tableA.delivery=tableB.id');
    while(
    $row mysql_fetch_array($result))
    {
      echo 
    $row['id'];
    }
    Когда ты джоинишь, то при получении ассоциативного массива - столбцы с одинаковыми именами накладываются.

    Решения:
    1) Использовать не ассоциативный массив mysq_fetch_row и по числовой позиции столбца получать его содержимое
    2) Указывать в запросе выводимые поля
    PHP:
    $result=mysql_query('SELECT TableA.*, TableB.id as "TableB.id" FROM TableA INNER JOIN TableB ON TableA.delivery=TableB.id');
    while(
    $row mysql_fetch_array($result))
    {
      echo 
    'id таблицы А = ' $row['id'] . '<br>';
      echo 
    'id таблицы B = ' $row['TableB.id'] . '<br>';
    }
     
    #10811 FireFenix, 16 Jul 2009
    Last edited: 17 Jul 2009
  12. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    PHP:
    <?php 

    $link 
    = array('http://vkontakte.ru/''http://forum.antichat.ru/''http://sape.ru/''http://linkfeed.ru/');
    $time 30//секунды

    if (isset($_GET['write']))
    {  
      
    setcookie ('hit'rand(0,2), time() + $time); 
      
    header('Location: http://localhost/111.php');
    }

    if (
    strlen($_COOKIE['hit']) > 0)
    {
      
    $page['name'] = 'hit';
      
    $page['link'] = $link[$_COOKIE['hit']];
    } else {
      
    $page['name'] = 'Не установлено';
      
    $page['link'] = 'Не установлено';
    }

    echo(
    'Cookie name = ' $page['name'] . '<br>' 'Cookie value = ' $page['link'] . '<br><a href="?write">Записать cookie</a>');
    ?> 
    Вот всё работает, проверял на 60 и 30 секунд
    Жмёшь Записать cookie и потом F5 пока не пройдёт время



    P.S. смысл этого кода для меня далёк
    PHP:
    if(isset($_COOKIE['hit'])) 
        { 
            
    setcookie ("hit"$_COOKIE["hit"]+1); 
            
    $show_link $link[rand(1,3)]; 
        }  
    else  
        { 
            
    setcookie ("hit""1"time() + 2); 
            
    $show_link $link[0]; 
        }
    нафига при наличии кукисов - их переписывать?

    P.S.S. Время истечения браузер проверяет по клиентскому времени => смотри чтобы на сервере вермя нормально было выставлено или завадавай строго определённое время
     
    #10812 FireFenix, 17 Jul 2009
    Last edited: 17 Jul 2009
  13. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Ну блин, я ж сделал для тестов, можно что угодно навесить...
    Я лиж показал - что всё работает

    PHP:
    <?php  

    $link 
    = array('http://vkontakte.ru/''http://forum.antichat.ru/''http://sape.ru/''http://linkfeed.ru/'); 

    $time =  mktime(000date("m") ,date("d") + 1date("Y"));

    if (
    strlen($_COOKIE['hit']) > 0
    {
      
    setcookie ('hit'rand(1,3), $time);  
    } else { 
      
    $_COOKIE['hit'] = 0
      
    setcookie ('hit'0$time);


    $page['link'] = $link[$_COOKIE['hit']]; 

    echo(
    '<table align="center" border="1" width="150" ><tr><td align="center"><img src="img.php" border="1"><br>' $page['link'] . '</td></tr></table>');
     
    ?>
    Со всеми пожеланиями думаю так
     
    #10813 FireFenix, 17 Jul 2009
    Last edited: 17 Jul 2009
    1 person likes this.
  14. kiddie

    kiddie New Member

    Joined:
    15 Jul 2009
    Messages:
    8
    Likes Received:
    2
    Reputations:
    0
    ip

    Кто может подсказать скрипт для записи IP-адресов всех посетителей сайта в txt файл
     
  15. j0ker13

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

    Joined:
    28 Jul 2008
    Messages:
    199
    Likes Received:
    16
    Reputations:
    5
    2FireFenix спасибо)
    еще вопрос) кто нить сталивался при получении запроса с дхл?)
    выводит пустую страницу(
     
  16. erihtoney

    erihtoney Member

    Joined:
    3 Mar 2009
    Messages:
    91
    Likes Received:
    73
    Reputations:
    20
    вернее будет так
    PHP:
    <?php
    $file
    ="ip.txt"// файл
    fclose(fopen($file,"a+b")); // если файл есть ничего не произойдет, если же нет создатся
    $f=fopen($file,"r+t"); // открытие
    flock($f,LOCK_EX); // блокировка
    $ip $_SERVER['REMOTE_ADDR']; 
    fwrite($f,$ip."\n");
    fclose($f); // закрытие
    ?>
    Иначе, при одновременном обращении несколькими пользователями, не буду говорить, что произойдет ;)
     
  17. Myload

    Myload Banned

    Joined:
    15 Mar 2009
    Messages:
    0
    Likes Received:
    96
    Reputations:
    6
    php скрипт заливающий любой файл на папку какую укажу
    может у кого есть:)
     
  18. sNt

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

    Joined:
    30 Jul 2008
    Messages:
    117
    Likes Received:
    11
    Reputations:
    1
    Откуда он должен брать этот файл? Из инета или с соседней папки?
     
  19. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
    <?php
    $file
    ='http://site.ru/file.ext'#твой файл
    $folder='folder'#папка для сохранения
    $savefile='file.2ext'#файл для сохранения
    fwrite(fopen($folder.'/'.$savefile,'a+'),file_get_contents($file); #запись в файл
    ?>
     
  20. ANTIHАCK

    ANTIHАCK Member

    Joined:
    20 Jun 2009
    Messages:
    19
    Likes Received:
    7
    Reputations:
    0
    Подскажите скрипт вывод текста из txt ) Все строчки.. Спс
     
Thread Status:
Not open for further replies.