php&;mysql通过记录循环,将有限数量的记录保存在多个框中
我有一个具有以下结构的表:php&;mysql通过记录循环,将有限数量的记录保存在多个框中,php,mysql,smarty,Php,Mysql,Smarty,我有一个具有以下结构的表: CREATE TABLE IF NOT EXISTS `data` ( `id` int(16) NOT NULL AUTO_INCREMENT, `name` varchar(40) NOT NULL, `email` varchar(40) NOT NULL, `photo` varchar(150) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_I
CREATE TABLE IF NOT EXISTS `data` (
`id` int(16) NOT NULL AUTO_INCREMENT,
`name` varchar(40) NOT NULL,
`email` varchar(40) NOT NULL,
`photo` varchar(150) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
此表中有60多条记录。
我想将记录预览到四个框中,每个框中有15条记录。
基本上,进行分页很容易,但我希望在幻灯片中这样做。
我现在的代码是:
$mysql_employers = "SELECT * FROM data LIMIT ".$page.",".$limiter."";
$query_employers = $dblink->query($mysql_employers) or die("employers failed!");
$employers_link = array();
while($employers = $query_employers->fetch(PDO::FETCH_ASSOC)){
$employers_link[]=$employers;
}
$employers = new Smarty;
$employers->caching = false;
$employers->assign("employers",$employers_link);
$employers->display("default/employers.tpl");
$page是页码,$limitor是每页的限制,即15。
smarty模板代码为
<div class="employers-box">
{$foreach $employers as $emp}
<div class="employers">
<div class="employerphoto"><img src="{$emp.photo}"></div>
<div class="employername"><a href="viewemplyer.php?employer={$emp.id}">{$emp.name}</a></div>
</div>
{/foreach}
</div>
{$foreach$雇主为$emp}
{/foreach}
我可以对代码进行哪些更改,使其在页面中显示为四个框(每个框有15个雇主),而不是显示在页面中?这不是最优雅的方式,但您可以使用
if
语句检查何时达到阈值,以关闭一个div
,然后打开下一个
在您的示例中,您的数组是数字的,因此我们可以使用index键
作为计数器。
在电视上读到这一点
您还可以使用只包含一个简单的if语句
<div class="employers-box">
{foreach key=$counter item=$emp from=$employers}
{if $counter % 15 === 0}
<div id="employers-box-{$counter / 15}" class="employers">
{/if}
<div class="employer">
<div class="employerphoto"><img src="{$emp.photo}"></div>
<div class="employername"><a href="viewemplyer.php?employer={$emp.id}">{$emp.name}</a>
</div>
{if $counter % 15 === 0}
</div>
{/if}
{/foreach}
</div>
{foreach key=$counter item=$emp from=$employers}
{如果$counter%15==0}
{/if}
{如果$counter%15==0}
{/if}
{/foreach}