所以这里是我的代码不断打我的错误信息,有权限摆弄,但没有运气,任何想法?PHP文件写入 - 错误信息每次
<?php
//create variables
$first_name = (int) $_POST['first_name'];
$last_name = (int) $_POST['last_name'];
$document_root = $_SERVER['/var/www'];
$date = date('H:i, jS F Y');
?>
<DOCTYPE html>
<html>
<head>
<title>We get the message...</title>
</head>
<body>
<h1>We get the message . . .</h1>
<?php
$output_string = $date."\t".$first_name.$last_name." \t".$message."\n";
@$fp = fopen("$document_root-messages.txt", 'w+');
if (!$fp) {
echo "<p>apologies</p>";
exit;
}
flock($fp, LOCK_EX);
fwrite($fp, $output_string, strlen($output_string));
flock($fp, LOCK_UN);
fflush($fp);
fclose($fp);
echo "<p>message written.</p>";
?>
</body>
</html>
我刚开始学习PHP因此它可能是很简单的东西,但我一直在抓我的头了大约一个小时,仍然没有拿出一个解决方案。
您确定您对文件夹具有所需的权限吗? – PekosoG
看起来您正在写入名为'/ var/www-messages.txt'的文件。我假设你的意思是'/ var/www/messages.txt'? '$ fp = fopen(“$ document_root/messages.txt”,'w +');'并注意我删除了@ @错误抑制。 –
如果这实际上是你的意图,那么允许Web服务器直接写入'/ var'是非常危险的。即使在'/ var/www'内部写入也是相当危险的,因为所有其他文件都明确需要被Web服务器用户设置为不可写。 –