我正在尝试为我的图片上传表单设置默认图片。在数据库中,我有“deafult_image”列,默认情况下设置为1,如果图像不是默认值,则设置为0.
我现在的问题是我可以将行更新为1以使图像成为默认值,但如果存在另一个图像并且默认为“1”那么我将有2个默认图像。如何更新我的默认图像,同时将当前默认图像更改为0,使其不再是默认图像。
media_id列是唯一的 link_id不是,并且可以为任何给定的link_id提供多个图像。
以下是我更新行以使图像默认的原因。
$media = $_GET['media_id'];
$media_id = '1';
$sql = "select * FROM images where media_id = '$media'";
$result = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_array($result)){
mysql_query("UPDATE images SET default_image='$media_id' where media_id = '$media'") ;
}
如果存在具有相同link_id的另一个图像,我应该怎么做,如果它是默认值,则将其从1更改为0。每个link_id都有一个默认图像,因此我需要更新到当前的默认图像。
我也知道我需要验证,这只是为了测试。
答案 0 :(得分:1)
如果我理解正确的话。所以你只需要找到当前默认值,将其设置为0,并将新默认值设置为1。 如果您担心会发生某些异常并且您无法设置新的默认图像,您可以将当前默认图像保存在变量中,设置新的默认图像,然后通过它的id找到以前的默认图像(保存在变量)并将其设置为0.
答案 1 :(得分:1)
这会将每个图像重置为0
$sql = "UPDATE images SET default_image='0'";
这会将您的相关图片设为默认
$sql = "UPDATE images SET default_image='1' where media_id = '$media'";