脚本移动到下一个图像

时间:2011-12-27 16:01:46

标签: php html image photos

我正在编写一个脚本来在我的网站上显示图像。图像存储在服务器上,源(路径)位于mySQL数据库中。我想通过调用我已经完成的两个php函数来移动到下一个(或上一个图片)。我到目前为止编写的代码是:

<?php

require "db_connection.php";

$query="SELECT source FROM photos";
$result=mysql_query($query);

$count=0;
$numberofpics=mysql_num_rows($result);

$image=mysql_result($result, $count, "source");


$num=1;

function slideshowForward() {
$num=$num+1;
if($num==($numberofpics+1)) {
$num=1;
}
$count=$count+1;
$image=mysql_result($result, $count, "source");
}

function slideshowBack() {
$num=$num-1;
if ($num==0) {
$num=$numberofpics;
}
$count=$count-1;
$image=mysql_result($result, $count, "source");
}
?>

显示图像的html部分是:

<!-- FORWARD AND BACK FUNCTIONS-->

<a class="back" href="http://mywebsite.com/discoverandrank.php?function=slideshowBack()">         <img src="graphics/back.png"/></a>

<a class="next" href="http://mywebsite.com/discoverandrank.php?   function=slideshowForward()"><img src="graphics/forward.png"/></a>

<!--DISPLAY MIDDLE PHOTO-->

<div id="thepics">
<img src="http://www.mywebsite.com/<?php echo $image; ?>" name="mypic" border=0   height="300" width="500"></img>
</div>

我很确定php脚本正在递增/递减当前图像的计数,但我认为问题可能是因为html(特别是img src =“....”)部分没有重新评估图像的计数何时增加?

1 个答案:

答案 0 :(得分:0)

嗯,这里有两点要指出:

  1. 我认为将一个函数名称作为参数传递给一个动作并不是一个好主意,而是应该使用类似的东西:“http://mywebsite.com/discoverandrank.php?op=next&current=10”然后评估op和current值以采取一些行动。
  2. 要从数据库中获取下一张图片,您可以使用以下内容: “选择来源照片限制”当前+ 1“,1”
  3. 要从数据库中获取上一张图片,您可以使用以下内容: “选择来源照片LIMIT”current-1“,1”
  4. 这样你就不需要保留计数器和东西,只需检查这些查询是否返回任何数据。

    希望这有帮助!