Php fopen()不工作或显示错误

Php fopen()不工作或显示错误,php,fopen,fwrite,Php,Fopen,Fwrite,我想在数据库中创建记录的同时创建一个新文件。数据库部分工作正常,但文件部分不工作。我想在根目录中的另一个文件夹中创建一个文件,我使用了相同的代码更改了文件名。尽管设置了ini\u set('display\u errors',3)代码没有返回任何错误,但我也尝试了fopen($file\u name,“w”)或die(“无法打开文件”),代码仍然运行。我已授予IIS\u IUSRS对目录的完全控制权。这是我的密码 $data = mysqli_fetch_array(mysqli_query($

我想在数据库中创建记录的同时创建一个新文件。数据库部分工作正常,但文件部分不工作。我想在根目录中的另一个文件夹中创建一个文件,我使用了相同的代码更改了文件名。尽管设置了
ini\u set('display\u errors',3)
代码没有返回任何错误,但我也尝试了
fopen($file\u name,“w”)或die(“无法打开文件”)
,代码仍然运行。我已授予IIS\u IUSRS对目录的完全控制权。这是我的密码

$data = mysqli_fetch_array(mysqli_query($conn,"Select * from content where link='$url'")); //fetch data from db
$id = $data['id'];
$file_name="/files/$id.html"; //sets file name
$file = fopen($file_name,"w"); //creates the file
fwrite($file,$_POST['desc']); //writes to the file
fclose($file); //closes the file

问题是PHP没有进入根目录。我添加了
$root=$\u服务器['DOCUMENT\u root']
,并将
$file\u name=“/files/$id.html”
替换为
$file\u name=“$root/files/$id.html”和它的工作就像一个符咒。

这是在windows中吗?
的结果是什么是可写的($file\u name)
通常在变量
$file\u name=“/files/{$id}.html”周围添加大括号也是一个好主意这是在windows中,
是可写的($file\u name)
不返回任何内容。我尝试打开同一目录中的一个现有文件,但它返回“打开流失败”:没有这样的文件或目录。问题是php不会进入根目录。