我想创建一个幻灯片放映及其数据存储在MySQL数据库中。
// SlideShow ----------------------------------------------
mysql_select_db($db,$con);
$qry5 = "SELECT * FROM tblSlider";
$slider_data = mysql_query($qry5,$con);
$rowCount = mysql_num_rows($slider_data);
然后我尝试创建一个函数......
function getSlideData(){
$slideNo = 0;
global $rowCount;
if($rowCount == 1 ){
$slideNo = 0;
}
else {
$slideNo += 1;
}
return $slideNo;
}
现在我尝试在html代码中显示它
<ol class="carousel-indicators">
<?php while ($slideShow = mysql_fetch_array($slider_data)){?>
<li data-target="#main-slider" data-slide-to="<?php getSlideData();?>" class="<?php if ($slideShow['id'] = 1){echo 'active';};?>"></li>
<?php } ?>
</ol>
我的mysql表中有两个幻灯片放映数据,上面的代码输出应为
<li data-target="#main-slider" data-slide-to="0" class="active"></li>
<li data-target="#main-slider" data-slide-to="1" class=""></li>
但我的代码输出是
<li data-target="#main-slider" data-slide-to="" class="active"></li>
<li data-target="#main-slider" data-slide-to="" class="active"></li>
我该怎么办?
答案 0 :(得分:1)
你可以实现这一目标而不会产生如此多的复杂性试试这个
<ol class="carousel-indicators">
<?php
$cnt = 0;
while ($slideShow = mysql_fetch_array($slider_data))
{
$cnt+=1;
?>
<li data-target="#main-slider" data-slide-to="<?php echo ($cnt-1); ?>" class="<?php if ($cnt == 1){echo 'active';}?>"></li>
<?php
}
?>
</ol>
答案 1 :(得分:0)
首先出现问题,你不要将返回值回显到属性中:
data-slide-to="<?php echo getSlideData();?>"
^^^^ this is required
第二个问题出在你的if语句中,你正在做一个作业(=
)而不是比较(==
)。所以改为:
<?php if ($slideShow['id'] == 1){echo 'active';};?>
^^ double ==