在php
中没有写入(或者甚至没有打开文件)我在这个网站上阅读了许多其他的问题,围绕这个错误,其中没有一个能够帮助我,下面的php代码从html文件获取数据输入,将它发送到php文件,在页面上打印出“Hello Name”之后,它应该打开一个名为My_file.txt的文件,该文件已经被创建,并且写入它,我一直无法做到,任何帮助都会很棒,这里是我的代码:在php
index.html文件:
<html>
<head><title>Hello Friend</title></head>
<body bgcolor="black">
<p style="text-align:center">
<font color="white">
<form action="data.php" method="post">
<input type="text" name="myname" id="myname">
<input type="submit" value="Submit">
</form>
</body>
</html>
data.php文件:
<html>
<head>
<title>Hello Friend, this is php</title>
</head>
<body bgcolor="black">
<font color="white">
<code>
<?php
$name = $_POST["myname"];
echo "Hello, " . $name;
$filename = "My_file.txt";
chmod($filename, 777);
$f = fopen($filename, "w") or die("Unable to open file");
fwrite($f, "The Name is: " . $name);
f.close($f);
echo fgets($f);
fclose($f);
?>
输出:
Hello, JohnUnable to open file
要打开文件进行写操作。确保文件可以通过此PHP进程写入。在出现data.php的脚本文件夹中查看您的http服务器权限。同时启用更详细的PHP错误,这可能与许多事情有关(也许你的主机禁用fopen功能)。
我在Linux上我通过apt-get install安装了php&apache2,我没有看到一个调试选项,我该如何去做呢? –
为了测试的目的,我建议你做一些类似'chmod -R 777/var/www'的东西。如果它有效 - 那么会出现许可问题,您可以稍后再解决。看看'/ var/log/apache2/*'文件,也许有些东西你可以检查。 –
您是否打开错误报告? – Machavity