将php表单输入写入文档根目录之外的文件
我通过一个html表单收集了一些信息,它将这些信息传递到一个php文件中,然后将其写入一个简单的文本文件中。问题是,只有当php和生成的文本文件都位于公共可见的文档根中时,这种方法才有效 显然,我希望将文本文件保留在文档根目录之外。我尝试了一个代理解决方案,其中文档根目录中的php文件只在一个秘密位置包含真实的php文件。不幸的是,这不起作用(找不到输入文件) html表单位于将php表单输入写入文档根目录之外的文件,php,html,Php,Html,我通过一个html表单收集了一些信息,它将这些信息传递到一个php文件中,然后将其写入一个简单的文本文件中。问题是,只有当php和生成的文本文件都位于公共可见的文档根中时,这种方法才有效 显然,我希望将文本文件保留在文档根目录之外。我尝试了一个代理解决方案,其中文档根目录中的php文件只在一个秘密位置包含真实的php文件。不幸的是,这不起作用(找不到输入文件) html表单位于~/www root/php/form.html中。它调用以下php文件。Web服务器错误:找不到文件 php文件(~/
~/www root/php/form.html
中。它调用以下php文件。Web服务器错误:找不到文件
php文件(~/secret/process.php
)
PHP不关心web服务器根目录。请确保运行PHP的用户具有该文件的权限,并共享您的代码和任何错误消息。您不能只使用。/
父目录吗?@Devon,我在共享主机上,因此我不确定需要对这些文件设置什么权限。由于权限原因,是否可能出现“未找到文件”错误?
<?php
if(isset($_POST['name'])) {
$data1 = $_POST['name'] . "\n";
$ret = file_put_contents('store_info.txt', $data1, FILE_APPEND | LOCK_EX);
if($ret === false) {
die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}