У меня вот в чем проблема:
Есть шаблон на TPL (main.tpl) главная страница
На ней отображаются новости, но когда я делаю их вывод, но выводится только одна последняя новость, а не все. Как это можно исправить? Вот код вывода новостей:
//Вывод новостей
$result = mysql_query ("SELECT * FROM news ORDER by id");
$myrow = mysql_fetch_array ($result) ;
do {
$tpl->set_value('id',$myrow['id']);
$tpl->set_value('N_TITLE',$myrow['n_name']);
$tpl->set_value('SHORT',$myrow['descr']);
$tpl->set_value('AUTHOR',$myrow['author']);
echo $news;
} while ($myrow = mysql_fetch_array ($result));
Вот часть кода из main.tpl отвечающая за блок с новостями:
<div class="news_c">
<div class="news_name">
<h2>{N_TITLE}</h2>
</div>
<div class="news_short">
<h4>{SHORT}... | Автор: {AUTHOR}</h4>
</div>
</div>
Вот скриншот самого сайта:
Шаблонизатор писал по книге - самый простенький:
<?php
class template_class{
var $values = array();
var $html;
function get_tpl($tpl_name){
if(empty(tpl_name) || !file_exists($tpl_name)){
return false;
}else{
$this->html = join('',file($tpl_name));
}
}
function set_value($key,$var){
$key = '{'.$key.'}';
$this->values[$key] = $var;
}
function tpl_parse(){
foreach($this->values as $find => $replace){
$this->html = str_replace($find, $replace, $this->html);
}
}
}
$tpl = new template_class;
?>