Автор Тема: циклические шаблоны  (Прочитано 8168 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« : 13 Февраля 2004, 13:45:12 »
Не удается вывести в выпадающем меню содержимое БД!
Частью кода я объявил циклический шаблон, он имеет форму выпадающего меню,(данные
считываются с БД) но мне не удается вывести в окне содержимое таблици БД.

//объявление циклического шаблона
//часть1
     
           Наука
           
           
/*
Science=поле таблици
scitable=таблица
часть2
*/
 $result=mysql_query("select Science from scitable");
    $Sci=array();
    $i=0;
    while($row=mysql_fetch_object($result))
     {
     $Sci[$i][\'scicol\']=$row->Science;
     $i++;
     }
//часть3
$tpl=new template;//объект класса template
$tpl->load_file(\'template\',\'template.html\');//загрузка файла шаблона
$tpl->parse_loop(\'template\',\'Sci\');       //заполнение циклического шаблона
$tpl->pprint(\'template\');

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

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #1 : 13 Февраля 2004, 13:58:48 »
Цитировать
zumer:
объявление циклического шаблона

объявление , говоришь?
и где же объявлено, что он циклический?
в уме?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
циклические шаблоны
« Ответ #2 : 13 Февраля 2004, 14:01:54 »
zumer
1. никто не знает что за шаблонизатор ты используешь
2. циклические шаблоны (ИМХО правильнее их называть блоками) обычно имеют примерно такой вид:





это на пример phplib. Суть в том, что часть шаблона, которая буде повторяться несколько раз должна быть ограничена какими-то ограничителями (в данном случае и )
Иначе шабюлонизатор не определит, какую часть нужно циклически повторять
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
циклические шаблоны
« Ответ #3 : 13 Февраля 2004, 15:56:22 »
[OFF]RomikChef
А ты про шаблоны спрашивал... :)
[/OFF]
LJ: Backslashed life (rss)

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #4 : 13 Февраля 2004, 18:12:03 »
CGVictor если два дурака путаются в понятиях, это еще не значит, что они оба правы.

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #5 : 13 Февраля 2004, 18:47:56 »
RomikChef

Думаю этого достаточно, вот вам объявление (LOOP)
У себя в скрипте объявление шаблона я писал, но в примере забыл
дописать, но все равно это не меняет для меня ситуации. Если
у ВАС есть желание мне помочь, то помогите пожалуйста
своим примером использования ц.шаблона.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #6 : 13 Февраля 2004, 19:09:43 »
ну спасибо, родной!
одолжение ты МНЕ сделал, да?
Нате вам, вот вам реальный код, подавитесь.
Действительно, для тебя это ситуации не меняет.
Какая разница, какой код писать в вопросе.
можно вообще поэму Пушкина написать, да?

то есть, предполагается, что я, не зная даже названия шаблонного движка, отвечу, как в нем организуются шаблоны?
Спасибо, конечно, за веру в мой гений, но увы, телепатия пока мне неподвластна.
или ты считаешь, что шаблоны - это некая функция. встроенная в пхп?
Вынужден тебя разочаровать.
Шаблонные движки - это совершенно бесполезные надстройки над пхп. Их существуют десятки, если не сотни. оэтому задавать вопрос по шаблонам не указывая, какой именно ты используешь - мягко говоря, не очень умно.

Если ты хочешь получать ответы на форуме, то не надо путать его с волшебной палочкой.
Вопросы надо задавать четко, предоставляя всю информацию.
если тебя о ччем-то спросили, то не швырять ответ, как одолжение.
Никому здесь ответ на твой ламерский вопрос не нужен, кроме тебя.

$tpl->parse_loop(\'template\',\'loop_Sub_R\');
я, видя этот шаблон в первый раз - и то сообразил.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
циклические шаблоны
« Ответ #7 : 13 Февраля 2004, 19:13:24 »
Цитировать
zumer:
но все равно это не меняет для меня ситуации

афигеть.

zummer
когда ты приходишь на форум за помощью, то будь добр, продумывай свои вопросы и пиши без опечаток. Иначе это просто неуажение к отвечающим. И никто тебе отвечать не будет.


Тебя интересует любой пример "циклического шаблона" или пример с использованием твоего класса template?
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #8 : 13 Февраля 2004, 19:13:27 »
Цитировать
zumer:
у ВАС есть желание мне помочь, то помогите пожалуйста
своим примером использования ц.шаблона.

пожалуйста:

<Select name="Sci" size="1">
<? foreach (
$sci_data as $col) { ?> 
<Option Value="<? echo $col ?>"><? echo $col ?></Option>
<? ?>
</Select>
« Последнее редактирование: 13 Февраля 2004, 19:18:34 от RomikChef »

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #9 : 13 Февраля 2004, 20:02:58 »
Макс
Цитировать
пиши без опечаток
 это просто неуажение к отвечающим

Я пишу с опечатками потому-что не могу набрать нужный мне скрипт.
Поставлена  передо мной следующея задача нужно чтоб  скрипт  выводил в выпадающем меню "названия наук ", которые генерировалась с запроса к БД, потом в следующем выпадающем меню можна было выбрать "раздел науки"(генерируется  с БД), ну  а  потом можна было-бы выбырать существующие статьи этого "раздела науки", и при этом выводятся: автор, ключевые слова, описание статьи возле ее названия, тоисть статьи.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #10 : 13 Февраля 2004, 20:05:54 »
кстати, я, похоже, прогнал.
тут либо
$tpl->parse_loop(\'Sci\',\'loop_Sub_R\');
но скорее -
$tpl->parse_loop(\'loop_Sub_R\',\'Sci\');

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #11 : 13 Февраля 2004, 20:21:57 »
RomikChef
Правильный вариант
$tpl->parse_loop(\'template\',\'loop_Sub_R\');

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #12 : 13 Февраля 2004, 21:18:27 »
RomikChef
Задача в том чтобы можна было вывести в выпадающем меню все науки,какую-то выберем,
потом в следующем выпадающем меню выберем подраздел науки, ну а потом увидим все статьи
данной науки и поднауки с ее  автором, описанием, языком.
В таблицах индексируются "наука" и "подраздел науки"
//scitable=название таблици
ID|science       
1 |Политология
2 |История
3 |ММДО

//sci_sub=таблица
ID|sci|sub|name_sub
1   2   1   Всемирная история   
2   2   2   История Украины
3   1   1   Лидерство в политике   
//sci=2 это История в табл.1

//maintb основная таблица
ID|sci|sub|author     |description       |language
1   1   1  Кучма       статья президента   украинский
2   2   2  Грушевский  глава Ц.Рады        русский

Для вывода содержимого таблиц я пытался использовать ц.шаблоны, но это не удалось.
ПОЖАЛУЙСТА ПОМОГИТЕ ВЫВОДОМ ДАННЫХ, над этой проблемой я уже неделю голову "ламаю".

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #13 : 13 Февраля 2004, 22:51:16 »
zumer
так.
вот такой вопрос на форуме - просто можно всем в пример ставить.
итак, я в нем вижу два подвопроса (это, кстати, недостаток)
1. как вывести выпадающий список.
2. как в зависимости от первого выбрать второй.

Начнем с первого.
а чем тебя не устраивает вариант

<tr>
<
td valign=top>Наука</td>
<
td>
<
Select name="Sci" size="1">
?>
$result=mysql_query("select Science from scitable");
while($row=mysql_fetch_array($result)) {
$sci=$row[\'Science\'];
<?
<Option Value="<? echo $sci ?>"><? echo $sci ?></Option>
<? ?>
</Select> </td> </tr>


И все.
вот тебе вывод списка. в ОДИН шаг.
Я понимаю, с шаблонами круто.
но сначала надо разобраться с тем, как это все работает.
Разобрался?
Один список сформировать можешь?

2 вопрос.
здесь сложнее.
В общем, у тебя есть два пути.
1. каждый выбор делать на следующей странице.
выбрал первый выбор, отправил. получил второй, выбрал, отправил, получил третий, выбрал, дальше пошел.
2. заранее все варианты залить в яваскрипт и формировать селекты яваскриптом.

Оффлайн zumer

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
циклические шаблоны
« Ответ #14 : 26 Февраля 2004, 00:09:15 »
RomikChef
Cледует сделать вывод такого плана, как это сделать:
наука1
поднаука1
статья1
статья2
поднаука2
статья1
статья2
наука2
...
//используемая БД смотреть выше
Нужно использовать пару циклов, но я пока не догадался
как это сделать.
За помощь благодарен!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28