Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 删除类别时取消多个图像的链接_Php_Mysqli - Fatal编程技术网

Php 删除类别时取消多个图像的链接

Php 删除类别时取消多个图像的链接,php,mysqli,Php,Mysqli,在我的数据库中,当我删除一个类别时,库存表中具有相同类别的所有项目都将被删除,因此图像也应被删除,因此我尝试了此代码。我认为我的代码中没有问题,因为我在一个图像行上尝试了此代码,但当我涉及多行时,它不起作用。这里是我的代码 if (isset($_POST['del'])) { $del = mysqli_query($conn,"DELETE FROM category WHERE id='$id'"); if ($del) { $selstock = mysqli_query

在我的数据库中,当我删除一个类别时,库存表中具有相同类别的所有项目都将被删除,因此图像也应被删除,因此我尝试了此代码。我认为我的代码中没有问题,因为我在一个图像行上尝试了此代码,但当我涉及多行时,它不起作用。这里是我的代码

    if (isset($_POST['del'])) {

$del = mysqli_query($conn,"DELETE FROM category WHERE id='$id'");
if ($del) {
   $selstock = mysqli_query($conn," SELECT img FROM stock WHERE category='$name' ");
       while($row2=mysqli_fetch_assoc($selstock))
       {
       $img1=$row2['img'];
unlink("product_img/$img1");
}

header("location:addcategory.php");
}
}
$name是类别 文件夹路径和URL是正确的,它与1行一起工作 我看到其他人也这么做,他们和我一样,但我的却不起作用
有人能告诉我我做错了什么吗

您的代码容易受到SQL注入的攻击。您应该使用准备好的语句。您正在Linux或Windows上执行代码吗?因为可能存在权限问题。。
        if (isset($_POST['del'])) {

         // Image Query
   $selstock = mysqli_query($conn," SELECT * FROM tablename WHERE categoryId ='$id' ");
    if($selstock)
    {
     while($delImage=mysqli_fetch_assoc($selstock))
     {
       foreach($delImage as $key => $value)
       {
        $delLink = $value['img']; // first try
        /*$delLink = $value['img][$key]*/ // secound try
         unlink($delLink);
       }

     }

    }

    // Delete Query 

    $del = mysqli_query($conn,"DELETE FROM category WHERE id='$id'");

     if($del)
     {
      header("location:your.php");
     }

    }