php содержимое фаила

Discussion in 'PHP' started by lomerok, 20 May 2008.

  1. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    Как зделать в этом скрипте :
    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print
    "<br><br><textarea>";
     
    readfile($op);
     print
    "</textarea>";
    }
    ?>
    чтоб нормально печаталось содержимое фаилов ... чтото типа htmlspecialchars .....
     
    #1 lomerok, 20 May 2008
    Last edited: 20 May 2008
  2. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    hnmlspecialchars => htmlspecialchars ?
     
  3. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Ну используй что-то типа:

    PHP:
    $gt htmlspecialchars(file_get_contents($op), ENT_QUOTES);
    Хотя постановку задачи пококретней сделай, что тебе не нравится в текущем варианте?
     
  4. _Great_

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

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,118
    Reputations:
    1,139
    А как именно оно выводит и как ты хочешь чтобы выводило?
     
  5. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    чтоб как здесь код вставляется , также и выводилось . а так оно печатается как хтмл страничка , надо чтоб печаталось внутри <textarea>...а не как документ .. проверте это на своём компе и сразу всё поймёте ...
     
  6. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    в данном случае все хтмл тэги заменяются , а надо чтоб печатались но не исполнялись...
     
  7. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Молодой человек, я вас понять не могу... Html-теги никогда не исполняются... Ты хочешь чтобы код выводился внутри Textarea, но уже отформатированный в виде Html?
     
  8. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    наоборот. чтоб выводился хтмл код в текстареа ....
     
  9. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    PHP:
    <textarea cols="100" rows="35">

    <?php

        
    print(file_get_contents('http://ya.ru'));

    ?>

    </textarea>
     
  10. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print
    "<br><br><textarea cols=\"50\" rows=\"20\">";
     print(
    file_get_contents($op));  
     print
    "</textarea>";
    }
    ?>
    тоже самое блин , теги выходят за рамку текстареа ...

    сматрите сами : http://slil.ru/25810073
     
  11. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Мда...
    Потому что на я.ру есть закрывающий тэг </textarea>
     
  12. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    где тут ya.ru интересно узнать :

    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print
    "<br><br><textarea cols=\"50\" rows=\"20\">";
     print(
    file_get_contents($op));  
     print
    "</textarea>";
    }
    ?>
     
  13. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Я вижу, что у тебя какой-то Php код валится в браузер, а не теги... Ты уверен, что у тебя где-то не стоит "?>", что прерывает секцию Php кода и валит контент в страницу? Дай весь скрипт посмотреть...
     
  14. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    это и есть весь скрипт

    фаил который я открываю содержит и пхп и хтмл .........
     
  15. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Ну хоть убей у меня всё нормально отрабатывает... Покажи файл, который ты выводишь...
     
  16. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    зделал так:

    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print 
    "<br><br><textarea cols=\"50\" rows=\"20\">";
     print 
    htmlspecialchars(file_get_contents($op));  
     print 
    "</textarea>";
    }
    ?>
    зароботало ....всем спсибо ...
     
    #16 lomerok, 20 May 2008
    Last edited: 20 May 2008
  17. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Блин, ну не пойму я, если как говорит Изис тебе закрывающая текстареа мешает, то тогда вот такой код юзай:

    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print
    "<br><br><textarea cols=\"50\" rows=\"20\">";
     print(
    htmlspecialchars(file_get_contents($op)));  
     print
    "</textarea>";
    }
    ?>
     
  18. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    тебе про это втирали вначале поста ещё...
     
  19. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    я вкурсе уже .. там я незаметил что показалось правильно так как увидел решотки №и подумал что текст заменяется...
     
  20. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    140
    Likes Received:
    8
    Reputations:
    0
    теперь вопрос такой , почему в данном коде сохраняется старое содержимое и новое вместе ... попробуйте с помощъю этого кода изменить какой либо фаил ...

    PHP:
    <?php 
    $o
    =opendir('./');
    $op=$_GET['name'];

    while (
    $r=readdir($o))
    {
    print 
    "<a href=\"?name=";
    print 
    $r;
    print 
    "\">$r</a>";
    print 
    "<br>";
    }
    if (isset(
    $op))
    {
     print 
    "<form method=\"POST\">";
     print 
    "<br><br><textarea cols=\"50\" rows=\"20\" name=\"text\">";
     print 
    htmlspecialchars(file_get_contents($op));  
     print 
    "</textarea>";
     print 
    "<input type=\"submit\" value=\"OK\"></form>";
     
    $ft=$_POST['text'];
     if(isset(
    $ft))
     {
      
    $fo=fopen($op,"a+");
      
    fputs ($fo,$ft);
     }
    }
    ?>
     
    #20 lomerok, 20 May 2008
    Last edited: 20 May 2008