我正在使用此代码更新给定文件;
<?php
if($_POST['submit']){
$open = fopen("textfile.php","w+");
$text = $_POST['update'];
fwrite($open, $text);
fclose($open);
echo "File updated.<br />";
echo "File:<br />";
$file = file("textfile.php");
foreach($file as $text) {
echo $text."<br />";
}
}else{
$file = file("textfile.php");
echo "<form action=\"".$PHP_SELF."\" method=\"post\">";
echo "<textarea Name=\"update\" cols=\"50\" rows=\"10\">";
foreach($file as $text) {
echo $text;
}
echo "</textarea>";
echo "<input name=\"submit\" type=\"submit\" value=\"Update\" />\n
</form>";
}
?>
但不知怎的,它显示了这个错误:
虽然我在提交文本时没有使用此代码更新文件,但没有错误或提交,但是屏幕截图中显示的错误会让我感到烦恼,所以我可以删除这些错误吗?
谢谢!
答案 0 :(得分:0)
将第2行更改为:
if(isset($_POST['submit'])){
将第15行更改为:
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">";
答案 1 :(得分:0)
假设您的提交按钮名为submit
,检查$_POST['submit']
是不可靠的(因为并非所有浏览器都提交了提交按钮),您应该检查发布的另一个字段名称 OR < / strong>更好的是,更改为if($_SERVER['REQUEST_METHOD'] == 'POST'){
。
另外,$PHP_SELF
假设您已经注册了全局变量(不应该是),您应该使用$_SERVER['PHP_SELF']
。
答案 2 :(得分:0)