创建互斥的图像幻灯片(同时显示两个图像,不能相同)

时间:2014-04-27 04:56:55

标签: php sql slideshow

感谢您提前帮助。这是最近其他人提出的类似问题(Random Switch Statement Improvements?),但那里提供的解决方案并没有为我做到这一点。

如果你不想去那个页面,这就是问题所在。我有2个幻灯片图像,一个在另一个上面。我希望这些图像永远不会相同,无论是在页面加载上还是幻灯片随机播放无限。

我已尝试添加

"ORDER BY rand() LIMIT 2"

并且只会使幻灯片图像消失。

以下是代码:

$getRugInfo = "SELECT f_name, l_name, city, zipcode, dfd.name as state_id, rug_types, profile_photo, profile_url, prt.rating  FROM rug_owners ps 
left join rug_states pst on dfd.state_id = ps.state_id left join rug_reviews 
prt on dfd.user_id = ps.user_id  WHERE promoted_rug = 1 ORDER BY ";  


$range_values = range(1,6);
shuffle($range_values);
$pickRug=array_pop($range_values);

 // I tried doing the code above, but it did not make the slideshow images mutually exclusive.  THe same two images would show up on occasion.  

$pickRug = mt_rand(1, 5);

switch($pickRug) {
case 1:
    $getSliderInfo .= "f_name";
    break;
case 2:
    $getSliderInfo .= "l_name";
     break;
case 3:
    $getSliderInfo .= "city";
    break;
case 4:
    $getSliderInfo .= "profile_photo";
    break;
case 5:
    $getSliderInfo .= "city DESC";
    break;
}

$sliderResult = mysql_query($getSliderInfo); // calls the slideshow

$link_address = $row["profile_url"];

然后对于第二张幻灯片图像(底部的图像)与上面的内容相同

以下是创建幻灯片的Jquery:

 <script>
    jQuery('#Slider').cycle({ 
    fx:     'fade', 
    speed: 3000
});
    jQuery('#Slider2').cycle({ 
    fx:     'fade', 
    speed: 3000
});
</script>

同样,它与上面提供的链接中的其他人基本相同,只是提供的解决方案不起作用。

1 个答案:

答案 0 :(得分:0)

尝试增加随机数的范围并调整switch语句,如下所示:

$pickRug = mt_rand(1, 15);

switch($pickRug) {
    case 1:
    case 4:
    case 7:
        $getSliderInfo .= "f_name";
        break;
    case 2:
    case 5:
    case 8:
        $getSliderInfo .= "l_name";
         break;
    case 3:
    case 6:
    case 9:
        $getSliderInfo .= "city";
        break;
    case 10:
    case 12:
    case 14:
        $getSliderInfo .= "profile_photo";
        break;
    case 11:
    case 13:
    case 15:
        $getSliderInfo .= "city DESC";
        break;
}

这种笨拙会给你带来更多独特的结果。

希望这会对你有所帮助!!