0

我正在尝试添加一个鼠标悬停,它基本上适用于第一个 MySQL 返回的查询。但是它不会起作用。它不识别我的IF ELSE语句,它只是返回ELSE命令。

我的数据就像

gallery
----------------------
id      sku         img                     types
1       454_red     front.jpg                   F
2       454_red     back.jpg                    F
3       452_red     front.jpg                   F
4       452_red     back.jpg                    F
5       452_red     a1.jpg                      S   
6       452_red     a2.jpg                      S

我的 PHP

<?
$imgsql=mysql_query("SELECT * FROM `gallery` WHERE `gallery`.`sku` = '".$r['sku']."' ORDER BY `gallery`.`type` ASC");
while($rimg=mysql_fetch_array($imgsql)){ 
?>
<? if($rimg == $rimg['0']){ ?>
        <div>
            <a href="product.php?prodref=<?=$r['sku']?>"><img src="//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg" onmouseover="this.src='//super.cdn.com/<?=$r['sku']?>/back.jpg'" onmouseout="this.src='//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg'"/></a>
        </div>
    <? } else { ?>
        <div>
            <a href="product.php?prodref=<?=$r['sku']?>"><img src="//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg"/></a>
        </div>
    <? } ?>
<? } ?>

$r["sku"]代码顶部调用,它位于产品列表循环中。

4

1 回答 1

2

为简单起见,然后取另一个变量,例如计数器或标志,如下所示

<?
$count = 1;

$imgsql=mysql_query("SELECT * FROM `gallery` WHERE `gallery`.`sku` = '".$r['sku']."' ORDER BY `gallery`.`type` ASC");


while($rimg=mysql_fetch_array($imgsql)){ 
?>
<? if($count==1){ ?>
        <div>
            <a href="product.php?prodref=<?=$r['sku']?>"><img src="//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg" onmouseover="this.src='//super.cdn.com/<?=$r['sku']?>/back.jpg'" onmouseout="this.src='//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg'"/></a>
        </div>
    <? } else { ?>
        <div>
            <a href="product.php?prodref=<?=$r['sku']?>"><img src="//super.cdn.com/<?=$r['sku']?>/<?=$rimg['img']?>.jpg"/></a>
        </div>
    <? } ?>
<? 
$count = 0;
} 

?>
于 2012-10-14T11:03:31.820 回答