2011-05-30 68 views
1

我有一个网页,我想在两个图像之间更新刷新。我不想使用随机函数,因为它只会产生一个随机输出,我可能会正确地得到第一个图像,但第二个图像可能会在8或9次刷新尝试后显示。所以使用随机函数是不可能的。打开刷新时两个图像之间的切换(更改)

+0

使用会话变量; – Ibu 2011-05-30 05:30:54

+0

看到我的答案,这种方式,它会继续显示下一个图像,直到最后再开始 – Ibu 2011-05-30 05:37:59

回答

4

您可以存储当前图像被显示在会话变量:

session_start(); 

$total_images = 10; // or whatever is the total number of images u have 

if (!isset($_SESSION['current'])){ 
    $_SESSION['current'] = 1; 
    $current = 1; 
}else { 
    $current = $_SESSION['current']; 
    $_SESSION['current']++; 
} 

if ($_SESSION['current'] > $total_images) { 
    $_SESSION['current'] = 1; // this way it will start over it reaches the end 
} 

$image = "image/path/name{$current}.jpg"; // name1.jpg, name2.jpg ... and so on; 

// now echo the current image 
echo "<img src={$image} alt='' />"; 
+0

+1解决方案似乎相当合理。然而,当试图理解翻转确实按预期工作时,'$ _SESSION ['current']'和'$ current'之间的连接看起来有点复杂。我认为从'$ current = $ _SESSION ['current']'开始'会更加清晰,只是为了简洁起见,并且只适用于一个变量。 – erisco 2011-05-30 05:40:50

0

甜,简单和容易。

session_start(); 
$swap = 8; // or 9, depends on you 
if (!isset($_SESSION['count'])) $_SESSION['count'] = 1; 
else { 
    $_SESSION['count']++; 
    if ($_SESSION['count'] < $swap) echo '<img src="image1.jpg" />'; 
    else { 
     echo '<img src="image2.jpg" />'; 
     unset($_SESSION['count']); 
    } 
}