绝对路径适用于unlink():
<?php
unlink('images/filename.jpg');
?>
但这不起作用。
<?php
$image_id = $_POST['image_id'];
unlink('images/'.$image_id)
?>
文件权限正常,脚本可以读取,写入和执行。尝试使用单引号和双引号,它使用绝对文件路径,但不使用从$ _POST []传递的变量。
这里有解决方法吗?谢谢。
答案 0 :(得分:1)
可能会稍微清理一下您的查询参数。不确定,但是当我尝试使用多种变体的代码时,它工作得非常完美!
根据你的说法,
unlink('images/filename.jpg');
工作得很好。然后,我看不出其他代码无法正常工作的原因。
执行以下操作: $ image_id = trim($ _ POST [&#34; image_id&#34;]);
在删除文件之前,请检查文件是否存在,这样,您就可以确定错误所在的位置。
$image_url = "images/{$image_id}";
if(file_exists($image_url)){
unlink($image_url);
} else {
die('file does not exist');
}
答案 1 :(得分:0)
尝试:
<?php
$image_id = $_POST['image_id'];
unlink('./images/'.$image_id)
?>
在目录名称中的图像前添加“./”。