PHP / MySQL删除图像

时间:2010-09-22 16:49:04

标签: php mysql

这是我昨天发布的这个问题 - my question from yesterday

webbiedave给出的答案似乎有效但继续删除组中的最后一个图像而不是通过复选框选择的图像。当我print_r($_POST);时,在打印数组中的任何地方都找不到这些图像。在页面/表单中,我有其他图像上传和文本输入都写入主表'isadmin',print_r($_POST);显示它们都很好。

从isgallery表中提取的图像似乎存在问题,而且它们似乎与表单中的其他项目隔离,并且在{{1}时未被拾取}}

任何帮助非常感谢。小号

1 个答案:

答案 0 :(得分:0)

如果您打算删除图像数组,可以将复选框代码更改为:

<label for="delGallery<?php echo $galleryResult['id'] ?>"><input id="delGallery<?php echo $galleryResult['id'] ?>" type="checkbox" name="gallery_ids[]" value="<?php echo $galleryResult['id'] ?>" /> Delete this image?</label><br />

现在您不需要在其他代码中使用隐藏的输入。 PHP将为您创建一个数组,因此在您的删除代码中,您可以执行以下操作:

if (!empty($_POST['gallery_ids'])) {  
    foreach ($_POST['gallery_ids'] as $galleryId) {
        $sql = "DELETE FROM isgallery WHERE id = ".mysql_real_escape_string($galleryId);
        mysql_query($sql);
    }
}

同样,您需要确保使用正确的清理/验证/转义代码。