Results 1 to 8 of 8

Thread: php функция readfile "вместо" require

  1. #1
    подниматель пингвинов crazy-mike's Avatar
    Join Date
    Nov 2006
    Location
    L'viv
    Posts
    179,963

    Smile php функция readfile "вместо" require

    Пусть и выглядит внешне как бред. Но php5 можно скомпилить так , что в качестве аргумента у readfile будет не имя файла , а URL.
    В результате по readfile можно , например , внутри вывода одного скрипта вставлять результат работы совсем другого скрипта ( а не сам этот другой скрипт ).
    URL , кстати , можно делать host-независимым - http://localhost/yoyo.php и т.д.
    Основная разница по сравнению с require - выполняется полностью отдельно от "вызывающей программы".
    Жизнь дается человеку один раз и прожить ее надо так, чтобы не ошибиться в рецептах.
    Строить Асгардию побуждает тьма, посетившая людские души

  2. #2
    Злыдень ))) profAleks's Avatar
    Join Date
    Jun 2009
    Posts
    3,337

    Default Re: php функция readfile "вместо" require

    Quote Originally Posted by crazy-mike View Post
    Пусть и выглядит внешне как бред. Но php5 можно скомпилить так , что в качестве аргумента у readfile будет не имя файла , а URL.
    В результате по readfile можно , например , внутри вывода одного скрипта вставлять результат работы совсем другого скрипта ( а не сам этот другой скрипт ).
    URL , кстати , можно делать host-независимым - http://localhost/yoyo.php и т.д.
    Основная разница по сравнению с require - выполняется полностью отдельно от "вызывающей программы".
    Майк, на этом можно сделать хороший парсер ?

  3. #3
    подниматель пингвинов crazy-mike's Avatar
    Join Date
    Nov 2006
    Location
    L'viv
    Posts
    179,963

    Default Re: php функция readfile "вместо" require

    Quote Originally Posted by profAleks View Post
    Майк, на этом можно сделать хороший парсер ?
    На этом можно делать самоизменяемый код! :rofl:
    php скрипт может генерировать другой php скрипт и запускать его "внутри себя" - и даже неоднократно различный.
    :leader:
    Жизнь дается человеку один раз и прожить ее надо так, чтобы не ошибиться в рецептах.
    Строить Асгардию побуждает тьма, посетившая людские души

  4. #4
    подниматель пингвинов crazy-mike's Avatar
    Join Date
    Nov 2006
    Location
    L'viv
    Posts
    179,963

    Default Re: php функция readfile "вместо" require

    :bab:
    Но там и более вменяемое применение этой радости есть. Допустим , хочется на страничку вставить что-то из БД на удалённом сервере. А на этом хостинге , где размещаешь скрипт , поддержки интерфейсов для работы с БД просто нет.
    Конечно же хочется вызвать оттуда , где оно есть. Но при этом не хочется ни парсить xml ни JSON из JavaScript. Можно и всё сделать на этом сервере - но получить данные с удалённого сервера с вообще без всякой мути с "промежуточным представлением данных".

    PHP Code:
    <?
      ob_start
    ("ob_gzhandler");  
      echo 
    "<?xml version='1.0' encoding='UTF-8'?>";
      echo 
    "<!DOCTYPE html>";
    ?>  
    <html>
    <head>
    <meta http-equiv="X-UA-Compatible" content="chrome=1" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8; lang=uk" />
    <title>References</title>
    <style type="text/css" media="all" >
      body { background-color: #000000; color: #f2f200; }
      header { color :#00ff00; }
      button { cursor :pointer; }
      header{ display :table; font-weight :bold; }
      header button { margin-left :1em; margin-bottom :3px; border :1px outset; }
      a { color :#ffffff; cursor :pointer; margin-left :5px; font-weight :bold; 
          border :none; text-decoration :none; }
      a:link { color :#00ff00; }
      a:visited {color :#00ff00; }
      a:hover {
        background-color :#ffff00; color :#000000;
      } 
      a:active {
        color :#ffff00; background-color :#ff0000;
      }
      #xtab { display :table; width :100%; }
      #xtab a { display :table-row; border-collapse :collapse; }
      #xtab a p { display :table-cell; border :1px solid #161616; 
        padding-left :0.5em; border-collapse :collapse; 
      }
    </style>
    </head>
    <body>
      <?
        readfile
    ("i.lov.putin.ru/info.php");
      
    ?>
    </body>
    </html>
    Ну и где-то далеко на i.love.putin.ru :

    PHP Code:
    <?
      
    require "putin.php";
      
    ob_start("ob_gzhandler");
      
    $dbc=pg_connect(fromPutin());    
      
    $q="select to_char(up,'DD Mon YYYY') as da,".
            
    "substr(up::time,0,9) as tm,lnk,descr ".
            
    "from links where exists(select icat,ilink from xrel where icat=1119 and ilink=links.isn)".
        
    "order by up desc";  
      
    $r=pg_query($dbc,$q); $n=pg_num_rows($r);
      echo 
    '<div>='.$n.'</div>';
      echo 
    '<section style="display :block; width :100%; height :30em; overflow :scroll;">';
      echo 
    '<div id="xtab" >';
      
    $i=0;
      while(
    $i<$n) {
        list(
    $da,$tm,$lnk,$descr)=pg_fetch_row($r,$i); $i++;
        
    $lnk=pg_unescape_bytea($lnk);
        
    $descr=pg_unescape_bytea($descr);
        
    $k=strlen($descr);
        if(
    $k>50$descr=substr($descr,0,50);
        
    $descr=iconv("KOI8-U","UTF-8//IGNORE",$descr);
        echo 
    '<a href="'.$lnk.'">';
        echo 
    '<p>'.$descr.'</p>';
        echo 
    '<p>'.$da.' '.$tm.'</p>';
        echo 
    '</a>';
      };    
      
    pg_close($dbc);
      echo 
    "</div></section>";
    ?>
    Прелесть в том , что всё отработается на совсем другом сервере - и просто результат работы вставится на "своём" хостинге.
    Жизнь дается человеку один раз и прожить ее надо так, чтобы не ошибиться в рецептах.
    Строить Асгардию побуждает тьма, посетившая людские души

  5. #5
    Патриот смешно's Avatar
    Join Date
    Apr 2003
    Location
    Страна чудес
    Posts
    55,561

    Default Re: php функция readfile "вместо" require

    вполне интересная вещь.
    4 main reasons why Boston is the best place to live:Red Sox (Baseball), Patriots (Football) World Champions
    Celtics the NBA (Basketball), Bruins Stanley Cup (Hockey)

  6. #6
    подниматель пингвинов crazy-mike's Avatar
    Join Date
    Nov 2006
    Location
    L'viv
    Posts
    179,963

    Default Re: php функция readfile "вместо" require

    Quote Originally Posted by смешно View Post
    вполне интересная вещь.
    просто таким способом не так уж и трудно устроить что-то похожее на фишинг какого-нибудь сайта. Читаешь "чужой контент" в "свою страничку" и выставляешь кучу разных обработчиков событий - но уже своих. :rofl:
    Жизнь дается человеку один раз и прожить ее надо так, чтобы не ошибиться в рецептах.
    Строить Асгардию побуждает тьма, посетившая людские души

  7. #7
    Злыдень ))) profAleks's Avatar
    Join Date
    Jun 2009
    Posts
    3,337

    Default Re: php функция readfile "вместо" require

    Quote Originally Posted by crazy-mike View Post
    просто таким способом не так уж и трудно устроить что-то похожее на фишинг какого-нибудь сайта. Читаешь "чужой контент" в "свою страничку" и выставляешь кучу разных обработчиков событий - но уже своих. :rofl:
    НафиГ фишинг, давай Rambler запарсим и повесим туда Сапу и гугл-адсенс. :wink1:

  8. #8
    подниматель пингвинов crazy-mike's Avatar
    Join Date
    Nov 2006
    Location
    L'viv
    Posts
    179,963

    Default Re: php функция readfile "вместо" require

    Quote Originally Posted by profAleks View Post
    НафиГ фишинг, давай Rambler запарсим и повесим туда Сапу и гугл-адсенс. :wink1:
    Там одна шиза есть - "relative URL". :rofl:
    ( из-за этого всё может не получиться )
    Жизнь дается человеку один раз и прожить ее надо так, чтобы не ошибиться в рецептах.
    Строить Асгардию побуждает тьма, посетившая людские души

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Russian America Top. Рейтинг ресурсов Русской Америки. Terms of Service | Privacy Policy Рейтинг@Mail.ru