我正在尝试构建一个url rotator,其中下一个url将显示在超链接下。
<a href="$URL[]">Next</a>
我能够从表中检索所有的enteries并将它们保存到数组中。但我不知道如何在超级链接下逐个显示它们,并在链接点击下一个网址应该显示。
我正在使用的代码
$sql=mysql_query("SELECT * from TABLE");
while($row = mysql_fetch_array($sql))
{
$Id[] = $row['id'];
$Name[] = $row['name'];
$URL[] = $row['url'];
}
显示
$x=0;
for ($x = 0; $x <= 10; $x++) {
echo "$Id[$x]";
echo "$URL[$x]";
echo "$Name[$x]";
echo "<br>";
}
请提出一些有关如何完成此任务的建议。
答案 0 :(得分:0)
如果问题只是计算数组索引。使用此代码:
for($x = 0; $x <= count($Id); $x ++) {
echo $Id[$key];
echo ' <a href="'.$URL[$key].'">Next</a>  ';
echo $Name[$key];
echo "<br>";
}
如果制作分页? 改变代码:
$curent = isset($_Get['page']) ? $_Get['page'] : '0';
// 10 number row in fetch DB
$count = $curent == '0' ? 10 : ($count - 1) * 10;
$sql=mysql_query("SELECT * from TABLE limit $curent,$count");
while($row = mysql_fetch_array($sql))
{
$Id[] = $row['id'];
$Name[] = $row['name'];
$URL[] = $row['url'];
}
// sample url = index.php
$url = 'index.php?page='. ($curent == '0' ? $curent+2 : $curent + 1);
显示指向下一页的链接:
<a href="<?php $url ?>">Next</a>
<?php
for($x = 0; $x <= count($Id); $x ++) {
echo $Id[$key];
echo ' <a href="'.$URL[$key].'">Next</a>  ';
echo $Name[$key];
echo "<br>";
}
?>
答案 1 :(得分:0)
假设您手中有$URL
数组,那么请计算数组。获取$get_url_no
,如果是,则检查它是否小于总网址,而不是$get_url_no
+ 1,这样您就可以访问下一个网址。将此链接添加到网址,以便您可以使用$get_url_no = $_GET['urlno'];
从网址获取该链接。
$count = count($URL);
$get_url_no = $_GET['urlno'];
$urlNo = (isset($get_url_no) && $get_url_no < $count) ? ($get_url_no + 1) : 0;
$url = $URL[$urlNo]."&urlno=".$urlNo;
echo '<a href="'.$url.'">Next</a>';