我有一個我在Twig中編寫的電視指南腳本,它可以正常工作 - 數據從PDO/MySQL正確顯示,但它是循環函數,具有CSS I有問題。使用foreach/PDO進行樹枝和循環函數迭代
這是我的代碼:
的index.html(段從相關部分)
<table id="show-time-results"><tbody><tr>
{% for d in data %}
{% i in 0..10 %}
{% set guide = ['odd', 'even'] %}
<td class="{{ cycle(guide, i) }}-item name"><a href="http://localhost/twigtest/">{{d.programme}}</a><br><em class="episode">{{ d.episode }}. </em></td><td class="info {{ cycle(guide, i) }}-item" nowrap="1" width="1%">{{d.airdate|date("F jS, Y")}} at {{d.airdate|date("g:ia")}}<br><a href="http://localhost/twigtest/">{{ d.channel }}</a></td></tr><tr><td colspan="2" class="
{{ cycle(guide, i) }}-item description"><p>{{ d.epinfo }} <a href="http://localhost/twigtest/">read more</a></p></td></tr>
{% endfor %}
{% endfor %}
</tbody></table>
和 的index.php:
<?php
// include and register Twig auto-loader
include 'Twig/Autoloader.php';
Twig_Autoloader::register();
// attempt a connection
try {
$dbh = new PDO('mysql:dbname=tvguidetest;host=localhost', 'test', 'test');
} catch (PDOException $e) {
echo "Error: Could not connect. " . $e->getMessage();
}
// set error mode
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// attempt some queries
try {
// execute SELECT query
// store each row as an object
$sql = "SELECT programme, channel, episode, epinfo, airdate FROM coronationst where airdate > NOW() ORDER BY expiration ASC LIMIT 20 OFFSET 0";
$sth = $dbh->query($sql);
while ($row = $sth->fetchObject()) {
$data[] = $row;
}
// close connection, clean up
unset($dbh);
// define template directory location
$loader = new Twig_Loader_Filesystem('templates');
// initialize Twig environment
$twig = new Twig_Environment($loader, array('debug' => true, 'autoescape' => false));
$twig->addExtension(new Twig_Extension_Text());
// load template
$template = $twig->loadTemplate('index.html');
// set template variables
// render template
echo $template->render(array (
'data' => $data
));
} catch (Exception $e) {
die ('ERROR: ' . $e->getMessage());
}
?>
數據顯示正確....除了它是由於我的代碼中{%for i in 0..10%}而重複它自己,所以我怎樣才能讓它顯示一次呢?
這些都是我的記錄(注意,表名是d.TABLENAME以上的index.html):
1個加冕街通道1 10:00 PM 550集這是信息 2加冕街通道2上午6:45插曲549信息去這裏 和8個更多類似的記錄。
如何解決重複記錄時沒有重複的問題? (即每個記錄不同,至少對於情節/描述/頻道字段,內容不相同,至少)?
也許你的回答你的問題你自己,但是那將是怎樣,讓我們知道,如果我們的答案可以幫助你甚至接受答案。只是提醒,因爲我很好奇,如果我的解決方案會按照建議工作 – SirDerpington 2013-05-04 16:02:52