我是PHP菜鸟,但我正在努力学习它。我已经处理了一些变量并从html表单中获取变量,我想获取用户在表单中键入的字符串 - 这是页面上表单的代码
<form method="POST" action="/php/write.php">
<input type="text" name="string"><input type="submit">
</form>
并在子文件夹php中我有文件&#34; write.php&#34;它看起来像这个
<?php
chmod(/write.txt, 0755);
$write == $_POST['string'];
$file = fopen("write.txt","w") or die("cant open file");
fwrite($file, $write);
fclose($file);
?>
我试图放入普通的HTML文件,但也没有用。 问题是,当我输入表单并按下提交时,它会将我重定向到write.php,但没有任何反应,&#34;无法打开文件&#34;没有写,也没有一些错误,文件保持为空,没有fwrite为我工作。有人可以帮帮我吗?
答案 0 :(得分:3)
您的代码存在一些问题:
chmod(/write.txt, 0755);
必须引用文件名,并且它可能不应位于根目录中。 chmod()
功能仅适用于现有文件。如果您的文件已存在,则这不是错误。
$write == $_POST['string'];
==
是比较运算符。您想要分配=
。
你的代码应该像这样 :
$write = $_POST['string'];
$file = fopen('write.txt','w') or die('cant open file');
fwrite($file, $write);
fclose($file);
chmod('write.txt', 0755);
(当我不需要在里面扩展变量时,我更喜欢单引号字符串。)
,在编写良好的程序中,你应该:
$_POST['string']
isset ($_POST['string'])
。
fopen()
,fwrite()
,fclose()
和chmod()
的返回值,并处理潜在错误。