php - 文件不会使用取消链接删除

标签 php mysql delete-file unlink

下面的文件应该删除存储在文件夹中的文件以及与该文件相关的数据库行。数据库行删除工作正常,但我无法让文件删除工作。 doc_link 是一个表列,存储图片的相对路径。任何帮助将不胜感激。

代码

$delete = $_POST['checkbox'];

foreach ($delete as $id => $val) {
    //Get file path stored in table and delete file
    $relpath="SELECT doc_link FROM documents WHERE id = '".$id."'";
    $pathresult= mysqli_query($con, $relpath) or die("Invalid query");
    unlink($pathresult);

    //Deletes row from table
    $query="DELETE FROM documents WHERE id = '".$id."'";
    $result= mysqli_query($con, $query) or die("Invalid query"); 
}

//Show that the items have been successfully removed.//
if (mysqli_affected_rows($con) > 0) {
echo '<p>The selected items have been successfully deleted.</p>';
} else {
echo '<p>An error has occurred while processing your request</p>';
}
?>

最佳答案

您不能只运行 mysql_query() 并期望它返回该值 doc_link。您还必须运行 mysqli_fetch_array()获取 行,然后通过 $row['doc_link'] 访问该值。 $pathresult 是 MySQL 资源,而不是文件的(字符串)路径。

关于php - 文件不会使用取消链接删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10148578/

相关文章:

php - 使用 imagejpeg 将文件保存到子目录

php - MySQL准备和执行的问题

php - 数组中的随机颜色应用于页面上的元素

mysql - 会首先执行括号内的所有内容吗?

amazon-web-services - 防止某些 AWS AMI 被意外删除

c - 状态 0xC0000121 - 删除文件

php 和 mysql 增删改查问题

java - Docker MySQL 在超时 : No operations allowed after connection closed 后删除表

mysql - 作为从存储过程返回的数据插入到表中

java - 删除android中的zip文件夹