Помогите по Smarty пожалуйста

Статус
В этой теме нельзя размещать новые ответы.

асс

Мой дом здесь!
Регистрация
13 Окт 2006
Сообщения
762
Реакции
230
Проблемма такая
есть массив полей из базы данных

вот код который выводит новости из базы

PHP:
$sql="SELECT * FROM `news` ORDER BY `id` ASC LIMIT 0,2";
$result=mysql_query($sql);
$num_results=mysql_num_rows($result);

for ($i=0; $i<$num_results; $i++)
    {
    $row=mysql_fetch_array($result);
    $id=$row["id"];
    $author=$row["author"];
    $date=$row["date"];
    $tema=$row["tema"];
 echo '  <a href="6.php?id='.$id.'">'.$date.'</a>';
}
} if (!$action && $id){

$sql="SELECT * FROM `news` WHERE `id`=".$id;
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
    $id=stripslashes($row["id"]);
    $author=$row["author"];
    $date=$row["date"];
    $text=$row["text"];
    $tema= $row["tema"];

  echo '<h1>'.$tema.'</h1>

  Добавил: <b>'.$author.'</b> ('.$date.')<p> '.$text.' <p>
   <a href="6.php">  Вернуться к новостям</a>';
 
   }

Мне нужно все это загнать в Smarty и вывести на странице
каждую переменную?
вывести все новости.
 
оконкретизируй
Что Именно оконкретизировать?
Вродьбы написал правильно. Мне надо все новости вывести через Шаблонизатор Smarty


Есть переменные которые выводят новости.
Вот они
$id=$row["id"];
$author=$row["author"];
$date=$row["date"];
$tema=$row["tema"];

чтоб их вывести в PHP я использую такой код


echo "$id $author $date $tema";

С помошью указаного в теме скрипта я выведу 10 новостей или больше на одной странице.


А если я воткну переменные в смарти
например
include_once("configs/config.php");
require '../libs/Smarty.class.php';

$smarty = new Smarty;

$smarty->compile_check = true;
$smarty->debugging = true;
$smarty->assign("autor","$author");
$smarty->assign("title","$tema");
$smarty->assign("date","$date");
$smarty->assign("text","$text");
$smarty->display('index.tpl');
А в самом index.tpl укажу {autor} {text} и так далее
то я получу только одну новость.

А мне надо получить все новости из базы.
примерно так

{foreach from="$news" item="n}
{$n.autor}
{/foreach}

по идее должно вывести всех авторов в цикле. Но у меня не выходит
{$n.autor}
 
Для просмотра ссылки Войди или Зарегистрируйся
$smarty->assign("title","$tema"); - это всего лишь переменная!!!! тебе нужен массив.
На офф. сайте все есть, а за тебя никто ничего делать не собирается.
 
в смарти переменную лучше всего передавать массив. очень удобно с ними в шаблоне потом работать.
 
$smarty->assign('massiv',$massiv);



{section name=i loop=$massiv}
{$massiv.author}
и т.д.
{/section}
 
В принципе у смарти никто fetch не отменял... Ну опять же удобно для определенніх задач...
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху