设置默认图像

时间:2012-03-28 04:21:09

标签: php mysql

我正在尝试为我的图片上传表单设置默认图片。在数据库中,我有“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都有一个默认图像,因此我需要更新到当前的默认图像。

我也知道我需要验证,这只是为了测试。

2 个答案:

答案 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'";