PHP $ _POST没有从textarea传递

时间:2010-12-11 08:12:14

标签: php post textarea

我有以下脚本要求输入密码,然后询问用户是否要编辑页面。点击页面在“<textarea>”中打开它,然后保存按钮应该再次将文本区域的内容发送到脚本进行写入。 (我知道这不是最安全的身份验证方式,如果有任何方法可以在没有SQL的情况下执行此操作,我希望听到它。)

问题是文本区域的内容没有传递给updateFile()函数。

<?
session_start();
$pass = 'generic_password';
$login ='<form action="?page=admin" method="post">
        Password: <input type="password" name="pass" />
        <input type="submit" />
        </form>'; 
function updateFile($file){
    $area=$_POST['area'];
    $fd=fopen($file,"w");
    fwrite($fd,$area);
    fclose($fd);
    echo $file.' has been saved';
    }
if (!isset($_POST['pass']) && $_SESSION['authed'] == false){
    echo $login;  
    $_SESSION['authed'] = false;
    }
elseif ($_POST['pass'] == $pass || $_SESSION['authed'] == true){
    $_SESSION['authed'] = true;

    if(isset($_POST['submit'])){
        updateFile($_POST['file']);
    }

    echo "Select a page to edit<br/>";
    echo "<ul>";
    foreach (glob("{*.html,*.css}",GLOB_BRACE) as $x){
        echo "<li> <a href=\"?page=admin&edit=$x\">$x </a></li>";
    }
    echo "</ul>";
    if (isset($_GET['edit'])){
        echo '<script type="text/javascript" src="nicEdit.js"></script> 
              <script type="text/javascript"> 
                bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
              </script> ';
        echo '<form method="post" action="?page=admin">You are editing: <a name="file">'.$_GET['edit'].'</a> <textarea name="area" style="width:920px;">';
        include $_GET['edit'];
        echo '</textarea>
              <input name="submit" value="Save" type="submit" />
              </form>';
    }
}
else
    echo "something went wrong";

?>

3 个答案:

答案 0 :(得分:1)

<input name="submit" value="Save" type="submit" />

以上从未转换为$_POST['submit']

答案 1 :(得分:0)

updateFile函数中没有传递任何内容。我怀疑你是如何打开文件的

名为<a>的{​​{1}}元素在file

中无法使用
$_POST

答案 2 :(得分:0)

可能你错了:

if(isset($_POST['submit'])){
  updateFile($_POST['file']);
}

这里你拿走了一个输入文件。在你的表单中没有任何这样的字段存在,只有一个锚标签有这样的名称和$ _POST不能带走锚标签内的数据。因此,最好保留一个文件名字段,如

希望这有帮助。