编写基于SQL计数的PHP代码

时间:2013-10-15 20:26:12

标签: php

如果你看看jsfiddle,你会注意到黄色和红色的模块。我的所有代码都工作,除了我必须手动输入模块的html / php。

http://jsfiddle.net/W6zYA/1/

我的模块代码是:

 <?php $row = mysql_fetch_row($result); ?>
 <a href='#' data-reveal-id="<?php echo $row[0]; ?>" data-animation="none" >
 <div class="grid_3">
<p id="contexttitle">
 <?php  echo $row[1]; ?>
     <span style="float:right;"> <?php echo $row[3]; ?> </span>
    </p>
    <p id="accesssubmenu">Last Update: <?php echo $row[6]; ?> </p>
 </div>
 </a> 
 <div id="<?php echo $row[0]; ?>" class='reveal-modal'>                 
 <h1> <?php echo $row[1]; ?> </h1>
 <p> <?php echo $row[4]; ?> </p>
 <p4>Last Update:  <?php echo $row[6]; ?> </p4>
 <a class="close-reveal-modal">&#215;</a>
 </div>

我想要做的是让它根据SQL查询创建X个这样的模块,我计算每个部分的行数(红色,黄色,绿色)。

我试图将php存储在SQL数据库中,经过研究发现这是不好的做法,即使使用eval()也不应该这样做,因为会有用户输入。我也读过像Smarty这样的PHP模板,但不确定这是否适合我。

如果有人能指出我正确的方向,我会非常感激,我不知道从哪里开始/谷歌会是什么。

3 个答案:

答案 0 :(得分:1)

mysql_fetch_row只获取一行。如果你有多行,你需要mysql_fetch_assoc或mysql_fetch_array,并使用类似foreach循环的东西来遍历结果。这将输出html与MySQL查询中的结果一样多次。

答案 1 :(得分:0)

尝试mysql_num_rows($result),它将为您提供查询返回的行数。我会尝试升级到PDO或mysql,因为mysql_ *函数将在PHP 5.5中弃用

http://php.net/manual/en/function.mysql-num-rows.php

答案 2 :(得分:0)

我假设你从你的数据库中获得了多条记录?这样你就可以使用while循环来循环你的结果。

while ($row = mysql_fetch_row($result)) {
 // do you html code here.
}

这应该可以解决问题。