我正在学习php和mysql。现在我需要一些使用$ _GET方法删除图像的帮助。我可以取消链接图像与文件夹,但不能从数据库列取消链接以下是userinfo
表列的数据库结构 -
USER_ID |用户名|电子邮件|密码|科|位置| FIRST_NAME | 姓氏|状态| user_pic | join_date |改性
这是我的php代码:
<?php
include 'sql.php';
if(isset($_GET['delete_id']))
{
// select image from db to delete
$select_img = mysql_query("SELECT user_pic FROM userinfo WHERE user_pic
=" .$_GET['delete_id']);
$db_field= mysql_fetch_array($select_img);
unlink("assets/img/user_images/".$db_field['user_pic']);
//delete from db
mysql_query("DELETE FROM userinfo WHERE user_id=".$_GET['delete_id']);
if($select_img===false){
die(mysql_error());
}
else
{?>
<script>
window.alert('Delete images Success!!!');
</script>
<?php
header("refresh:2;user_profile_settings.php");
}
}
?>
// here is the HTML part Which display using while loop
<a class="btn close" href="?delete_id=<?php echo $userpic; ?>" title="click
for delete" onclick="return confirm('sure to delete ?')" >×</a>
<img src="assets/img/user_images/<?php echo $userpic; ?>" />
我知道这是非常简单的代码..我想知道这就是为什么我发布这个。我已经厌倦了很多技术但每次都失败了。这个你能帮我吗。 提前谢谢
答案 0 :(得分:1)
DELETE FROM
删除整行。
由于foreign keys
或其他原因,我很确定它会拒绝。
如果您只想清空列,则应使用UPDATE
$query = "UPDATE userinfo SET user_pic='' WHERE user_id='$_GET['delete_id']'";
mysql_query($query);
您还应该听取其他人的意见并考虑切换到MYSQLI,但更重要的是,防止SQL注入!