感谢您的帮助。
程序的对象。
file.php有一个表单和以下代码。
names.txt是将填充文本字段中输入的名称以及用户点击提交时的文件。
某人将其姓名输入表单字段并单击“提交”。 该名称输入名为names.txt
的文件中问题。 file.php程序有效 表单显示在浏览器中,测试“回声”显示在浏览器中。 但即使我输入,names.txt字段也没有任何数据 在文本字段中输入名称,然后单击“提交”。
file.php
if (isset($_POST['name'])) {
$name = $_POST['name'];
if (!empty($name)) {
//echo 'okay';
$handle = fopen('names.txt', 'w');
fwrite($handle, $'alex');
fwrite($handle, $'kyle');
fclose($handle);
}else{
echo 'please type a name';
?>
<form input type ="text" name ="file.php" method ="POST" >
Name: <br><input type ="text" name ="name"><br><br>
<input type="submit" name ="submit" value ="Submit">
</form>
答案 0 :(得分:1)
此
$'alex'
并不意味着“其中包含名称alex的变量”。如果你想写字符串'alex',你需要。
fwrite($handle, 'alex');
答案 1 :(得分:1)
变量$'alex'
和$'kyle'
不存在。试试这个:
$handle = fopen('names.txt', 'w');
fwrite($handle, $name . "\n");
fclose($handle);
答案 2 :(得分:1)
这里有几个问题,你在模式w
中使用fopen打开文件,这基本上以写模式打开文件,将指针放在文件的开头然后截断ifile。 / p>
您应该使用a+
,这将打开文件,根据需要创建它并将指针放在文件的末尾。
下一个重大问题是你使用以下几行
fwrite($handle, $'alex');
fwrite($handle, $'kyle');
根据您的描述,您应该使用
fwrite($handle, $name);
另一个小问题是你使用isset和empty,你可以使用empty,因为它也会进行内部isset检查
尝试以下方法:
if (!empty($_POST['name']))
{
$handle = fopen('names.txt', 'a+');
fwrite($handle, $_POST['name']);
fclose($handle);
}
else
{
echo 'please type a name';
?>
<form input type ="text" name ="file.php" method ="POST" >
Name: <br><input type ="text" name ="name"><br><br>
<input type="submit" name ="submit" value ="Submit">
</form>