| |
|
|
| | Так как со смарти работают если не все т опочти все, решил перейти ан него пусть сложней но помощи моно найти легче :)
Первый вопрсо с выводом всех данных, то есть не первой записи из базы а всех по порядку!
Вот так вот делаю:
index.tpl
{include file="header.tpl"}
{$Name|upper}
{include file="footer.tpl"}
|
index.php
<?php
require 'sm/libs/Smarty.class.php';
require 'config.php';
require 'modules_index.php';
$smarty = new Smarty;
$smarty->assign("Name","$title");
$smarty->display('index.tpl');
?>
|
данные из $title беру из файла require 'modules_index.php';
там вот так
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
$id=$_GET["name"];
if (!IsSet($id))
{
$query = "SELECT * FROM pages WHERE name='index'";
$result = mysql_query($query);
while($r=mysql_fetch_array($result))
{
$title=$r["title"];
$keywords=$r["keywords"];
$description=$r["description"];
$text=$r["text"];
$date=$r["date"];
};
}
else
{
$query = "SELECT * FROM pages WHERE name='$id'";
$result = mysql_query($query);
while($r=mysql_fetch_array($result))
{
$title=$r["title"];
$keywords=$r["keywords"];
$description=$r["description"];
$text=$r["text"];
$date=$r["date"];
};
}
?>
|
Но как я уже выше сказал выводится только первая запись, пожалуйста, помогите вывести все записи! :(
а то как то не хорошо получается :(
Как то я уже добивался вывода всего но выводилось так
ИМЯИМЯ ИМЯ ИМЯ ИМЯ
ФАМИЛИЯ ФАМИЛИЯ ФАМИЛИЯ ФАМИЛИЯ ФАМИЛИЯ
А мне допустим для гостевой надо
Имя
Фамилия
Имя
Фамилия
но такова не смог добится :( | |
| |
|
|
| |
|
|
| |
для: Panker
(23.11.2006 в 11:07)
| | | Так не получится. Смарти сначала надо передать все(!) даныне, а уж затем парсить шаблон.
http://smarty.php.net/manual/ru/language.function.section.php | |
| |
|
|
| |
|
|
| |
для: Loki
(23.11.2006 в 11:22)
| | | что то не допонимаю!
делаю первый пример!
<?php
$id = array(1001,1002,1003);
$smarty->assign('custid',$id);
$fullnames = array('John Smith','Jack Jones','Jane Munson');
$smarty->assign('name',$fullnames);
$addr = array('253 N 45th', '417 Mulberry ln', '5605 apple st');
$smarty->assign('address',$addr);
?>
{*
переменная loop определяет только количество итераций.
вы можете получать доступ к любой переменной из шаблона внутри секции.
Этот пример предполагает, что $custid, $name и $address все являются
массивами, содержащими одинаковое количество значений
*}
{section name=customer loop=$custid}
<p>
id: {$custid[customer]}<br />
name: {$name[customer]}<br />
address: {$address[customer]}
</p>
{/section}
|
прямо так и писать в файле индес и должно работать или что то ещё?
если просто так то вот Fatal error: Call to a member function on a non-object in y:\home\smarty\www\index.php on line 4
а если
require 'sm/libs/Smarty.class.php'; подрубать класс то тоже самое, не понима. про какой обьект они мне пишут ? :) | |
| |
|
|
| |
|
|
| |
для: Panker
(23.11.2006 в 15:32)
| | | проще надо, люди потянутся
<?php
//только самое основное выборка из базы и тправка смарти
$smarty->debugging = true;//отладка очено помогает в работе с разбором
rows=mysql_query($sql);//sql запрос сами
foreach ($rows as $numRow=>$row){
$smarty->append ($row);//уже отправлено шаблону
}
//в итоге получается массив $row['поле_базы']
//дальше
$smarty->display('index.tpl');//или что там у вас
?>
{section name=ext loop=$полебазыID}
{$полебазы2[ext]}<br>
{$полебазы3[ext]}
{/section}
|
И кто это Все на смарти? по количеству ресурсов и информации которая только в мануале и на оф форуме, я бы сказал что програмисты не любят смарти. | |
| |
|
|
| |
|
|
| |
для: Panker
(23.11.2006 в 15:32)
| | | >а если
>require 'sm/libs/Smarty.class.php'; подрубать класс то тоже самое, не понима. про какой обьект они мне пишут ? :)
Ох елки так нужно обязательно объект подключить. а я уже сразу про sql выборку.
хм.... МАНУАЛ ПО СМАРТИ где то 4-5 страница.
<?php
require_once('libs/Smarty.class.php');// Это и есть объект и библиотека
$smarty = new Smarty;//объявляем обект и работаем
$smarty->template_dir = 'templates/';//именно тут подготовленные шаблоны
$smarty->compile_dir = 'templates_c/';//компилированные шаблоны
$smarty->config_dir = 'configs/';//файлы конфигурации смарти
$smarty->cache_dir = 'cache/';//кеш смарти
//эти папки обязательны
?>
|
Есть более удобный вариант подключения смарти, читайте мануал. | |
| |
|
|
| |
|
|
| |
для: indexer
(24.11.2006 в 01:09)
| | | вы меня прсотите, но что т оя так и не понял что делать :(
да и ошибка на Parse error: parse error, unexpected '=' in y:\home\smarty\www\index.php on line 19 строку ((
а там какрас ваше подключение rows=mysql_query($sql);//sql запрос сами | |
| |
|
|
| |
|
|
| |
для: Panker
(25.11.2006 в 07:41)
| | | Так вот сейчас подробно, пожалуйста не поленитесь :) помогите )
<?php
[b]Error_Reporting(E_ALL & ~E_NOTICE);
require_once('config.php');// Это и есть объект и библиотека
require_once('modules_index.php');// Это и есть объект и библиотека
require_once('sm/libs/Smarty.class.php');// Это и есть объект и библиотека
$smarty = new Smarty;//объявляем обект и работаем
$id = array(1001,1002,1003);
$smarty->assign('custid',$id);
$fullnames = array('John Smith','Jack Jones','Jane Munson');
$smarty->assign('name',$fullnames);
$addr = array('253 N 45th', '417 Mulberry ln', '5605 apple st');
$smarty->assign('address',$addr);[/b] // всё работает, вывод типа который мне надо, по порядку!
//А вот тут ваш способ! Только я не понимаю
// 1 Где тут поле указывать!
// 2 и как это в обьект для вывода превратить!
// допустим что бы место $addr = array('253 N 45th', '417 Mulberry ln', '5605 apple st');
// Можно было указывать тот цикл что ниже, и выводить из таблицы $title ??
$rows=mysql_query($sql);
foreach ($rows as $numRow=>$row)
{
$smarty->append ($row);
}
//в итоге получается массив $row['поле_базы']
//дальше
$smarty->display('index.tpl');//или что там у вас
?>
|
Ещё ошибка выводится :( - Warning: Invalid argument supplied for foreach() in y:\home\smarty\www\index.php on line 20 | |
| |
|
|
| |
|
|
| |
для: Panker
(25.11.2006 в 07:44)
| | | эт куда моя тема сьехала :) | |
| |
|
|
| |
|
|
| |
для: Panker
(25.11.2006 в 20:51)
| | | чтобы работать со smarty-переменной как с массивом, надо передать ей массив , логично? :) | |
| |
|
|
| |
|
|
| |
для: isset
(25.11.2006 в 21:01)
| | | (((((((((((((((((((((( логично то логично (((( но я последнее время ваше туплю не фига не понимаю, а ж растроелся....
ну если не кодом то как нить плиз подскажите, чт оконкретно мне сделать!
я уже 10 шаблонизаторов сменил, что мне делать....не знаю :( | |
| |
|
|
| |
|
|
| |
для: Panker
(26.11.2006 в 12:57)
| | | Смарти, фиг..ти - надо думать и о продвижении. Никогда проект из шаблона не будет для робота релевантным. Если хочешь шаблоны, то пиши их сам в классы и используй по необходимости в контексте страницы или при обработке данных, но никак не на самой странице.
У меня в классах шаблоны занимаются выводом определенных блоков кода в определенные места страницы, но никогда через них не выводится главный контент, только ссылки, банеры и прочие мелочи. | |
| |
|
|
| |
|
|
| |
для: XPraptor
(27.11.2006 в 00:50)
| | | Что то я не понимаю, много времени прошло, я что то понял что т онет :(
помогите плз, уверен у кого то тут точно ест ьпроект на смарти, покажите как вы вытасткиваете данные и выводите ихх нормальным списком а не через строку :(
как новости вывод новостей на смарти или что у вас там :( помогите плз
Смарти, фиг..ти - надо думать и о продвижении. Никогда проект из шаблона не будет для робота релевантным.
Если хочешь шаблоны, то пиши их сам в классы и используй по необходимости в контексте страницы или при обработке данных, но никак не на самой странице.
|
Вы о SEO ( продвижении ? )
Так вот смарти каким тут боком :)
Сколько сайты не продвигаю, сколько проектов не вёл, не ощутил разницу в статическом и в смарти :) | |
| |
|
|
| |
|
|
| |
для: XPraptor
(27.11.2006 в 00:50)
| | |
Смарти, фиг..ти - надо думать и о продвижении. Никогда проект из шаблона не будет для робота релевантным.
| Уважаемый. Не надо вводить массы в заблуждение. Роботам абсолютно и категорически фиолетово как формируется страница. Из шаблона, просто html или в ворде на коленке сделана.
Это такой же браузер и берёт он уже готовый результат. | |
| |
|
|