如何使用表单内的HTML代码填充TextArea

时间:2013-02-19 02:25:41

标签: php html forms post get

所以我昨晚建了一个网站,现在我想添加能够从网上编辑文件的功能。要做我创建的概念证明:

  1. 在DIR(工作)

  2. 中提交了文件名的列表框
  3. 调用所选文件的提交按钮(工作)

  4. 显示代码的文本区域(Working kinda)

  5. 保存按钮(尚未连接)

  6. 我无法弄清楚如何使用包含<form>标记的HTML文件填充文本区域。我一做到就打破了页面上的实际形式,弄乱了所有的ui。这只是一个原型,但我只能想象真实网站会有类似的问题。

    以下是用于测试目的的相关代码。

    <html>
    <body>
      <form action="getdir.php" method="GET">
       <table>
        <td valign="top">
         <select name="file">
         <option value=""></option>
         <?php
           $size = 0;    
            foreach(glob("*.html") as $filename)
            {
              $size++;
            }
           $count = 0;
           $files[size];
    
            foreach(glob("*.html") as $filename)
            {
             $files[$count] = $filename;
             print('<option value=');
             print($filename);
             print('>');
             print($filename);
             print('</option>');
             $count++;
            }
         ?>
         </select>
        <input type="submit" value="Get Code"/></td><td>
    </form>
    
    <form action="getdir.php" method="POST">
    <?php     
     $f = $_GET['file'];
     if($f!=null){
        $openedFile = fopen($f,'r');
        $read = fread($openedFile,filesize($f));
        print('<textarea name="tb1" rows="100" cols="100">');
        print(addslashes($read));
        print('</textarea></td>');
        fclose($openedFile);
      }
     else{
       print('<textarea name="tb1" rows="100" cols="100"></textarea></td>');
      }
    ?>
    <td>
       <input type="submit" style="height:800px" value="Save Code"/>
    </td>
    </form>   
    </body>
    </html>
    

1 个答案:

答案 0 :(得分:3)

尝试使用addslashes

替换htmlspecialchars