Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Вопрос по смарти для профи)
filomax  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Ну постараюсь изложить вопрос кратко.
Смарти версии 3.
В шаблоне вывожу:
{foreach $mySql->select("`id`, `name`", "`mains`") as $main}
{get_parents select=array("`id`, `name`, `display`, `sef`", "mains_values", $main['id'])}
html код для компиляции {$value['name']}<br />
{/get_parents}
{/foreach}

Выводит типы меню, и пытается их обработать (вывести дочерние пункты).

Дальше.

На php ловлю следующим образом:
$smarty->registerPlugin("block","get_parents", "get_parents");

теперь сама функция:
function get_parents($params, $content, $smarty, &$repeat, $template = ''){
global $mySql;
$select = $params['select'];

if($parents = $mySql->select($select[0], $select[1]." WHERE `parent` = ".intval($select[2])){
foreach($parents as $value){
$smarty->assign('value', $value);
$ret .= $content;
}
}


return $ret;
}


И теперь вопрос:
допустим у первого пункта два подпункта. Тест 1 и Тест 2.
В данном виде код выводит
html код для компиляции Тест 2
html код для компиляции Тест 2

Если бы выводил
html код для компиляции Тест 1
html код для компиляции Тест 1
то можно было бы в assign добавить true для nocache, но выводит последнее значение везде, а не первое.

В какую сторону копать?
И кстати если заменить $ret .= $content; на return $content; то выводит
html код для компиляции Тест 1
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
T1grOK  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2733
Пользователь №: 24406
На форуме: 6 лет, 3 месяца, 6 дней
Карма: 176




Выделяйте код тегами. В таком виде писанину никто разбирать не будет.


--------------------
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (T1grOK @ 25.12.2012 - 06:34)
Выделяйте код тегами. В таком виде писанину никто разбирать не будет.

Да, совсем люди обленились. Две строчки кода в трех строчках текста не найти. Если не в силах что-то подсказать - лучше не флуди.
Профи то есть тут?

Это сообщение отредактировал filomax - 25.12.2012 - 11:58
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Winston  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 7 лет, 6 месяцев, 29 дней
Карма: 552




Цитата (filomax @ 25.12.2012 - 09:57)
Да, совсем люди обленились. Две строчки кода в трех строчках текста не найти.

Он тебе дельное замечание дал, что нужно выделять свой код тегами [ php ], А разбираться кому то в не подсвеченном наборе символов, нафиг никому не надо.
Цитата (filomax @ 25.12.2012 - 09:57)
Профи то есть тут?

Нету. Здесь все новички wink.gif
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (Winston @ 25.12.2012 - 08:00)
Цитата (filomax @ 25.12.2012 - 09:57)
Да, совсем люди обленились. Две строчки кода в трех строчках текста не найти.

Он тебе дельное замечание дал, что нужно выделять свой код тегами [ php ], А разбираться кому то в не подсвеченном наборе символов, нафиг никому не надо.
Цитата (filomax @ 25.12.2012 - 09:57)
Профи то есть тут?

Нету. Здесь все новички wink.gif

Да что-то было не отредактировать основное сообщение темы. Странно, ну ладно.
Профи тут должны быть. По крайней мере профи в смарти. А так я сам не новичок, но эта задача меня убила. Есть у меня конечно предположение. Но оставлю его на потом, может есть люди которые сталкивались с этой проблемой.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
T1grOK  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2733
Пользователь №: 24406
На форуме: 6 лет, 3 месяца, 6 дней
Карма: 176




foreach($parents as $value){
$smarty->assign('value', $value);
$ret .= $content;
}

Чушь.
А зачем так извращаться. foreach в коде компиляции(шаблоне) нынче не катит? ))


--------------------
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (T1grOK @ 25.12.2012 - 09:08)
foreach($parents as $value){
$smarty->assign('value', $value);
$ret .= $content;
}

Чушь.
А зачем так извращаться. foreach в коде компиляции(шаблоне) нынче не катит? ))

Елки-палки, как же я сам не догадался?
А ты не думал например что у меня меню может быть бесконечной вложенности и функция должна быть уникальная для вывода дерева не только меню? Я же говорю, не можешь помочь - лучше не флуди.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Ну так что? Миссия невыполнима?)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Winston  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 7 лет, 6 месяцев, 29 дней
Карма: 552




Цитата (filomax @ 25.12.2012 - 13:04)
Ну так что? Миссия невыполнима?)

C твоей манерой общения всем стало пофиг на тебя и твою проблему.
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (Winston @ 25.12.2012 - 12:43)
Цитата (filomax @ 25.12.2012 - 13:04)
Ну так что? Миссия невыполнима?)

C твоей манерой общения всем стало пофиг на тебя и твою проблему.

Ну ну) Просто видно какие профи тут сидят)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15781
Пользователь №: 6543
На форуме: 8 лет, 3 месяца, 19 дней
Карма: 299

Трезвый :
6 лет, 28 дней


Профи давно не юзают этот пережиток прошлого. Есть тут те, кто помнит, но не думаешь ли ты, что тут сидит дежурный врач? Подожди, заглянет кто-нибудь, кто вспомнит.
Уж больно скор.


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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (twin @ 25.12.2012 - 13:11)
Профи давно не юзают этот пережиток прошлого. Есть тут те, кто помнит, но не думаешь ли ты, что тут сидит дежурный врач? Подожди, заглянет кто-нибудь, кто вспомнит.
Уж больно скор.

Да? Интересно когда это смарти стал пережитком прошлого.
Покажите мне шаблонизатор лучше смарти? Кроме самописных, которые ничего не могут, только как выполнять ваши нужды и в которых потом черт ногу сломит после вас.
Даже готов подискутировать на эту тему со знающим человеком.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15781
Пользователь №: 6543
На форуме: 8 лет, 3 месяца, 19 дней
Карма: 299

Трезвый :
6 лет, 28 дней


filomax
Цитата
Даже готов подискутировать на эту тему со знающим человеком.
Не стоит. Эти дискуссии были актуальны 2 года назад. Тогда да, каждая вторая тема была про смарти. Сейчас если раз в три месяца всплывет, то хорошо. Это показатель. А холиварить что лучше, что хуже... вряд ли у кого возникнет желание. Все давно определились какой шаблонизатор юзать и юзать ли вообще.


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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
filomax  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 23
Пользователь №: 25432
На форуме: 6 лет, 1 месяц, 3 дня
Карма:




Цитата (twin @ 25.12.2012 - 14:07)
filomax
Цитата
Даже готов подискутировать на эту тему со знающим человеком.
Не стоит. Эти дискуссии были актуальны 2 года назад. Тогда да, каждая вторая тема была про смарти. Сейчас если раз в три месяца всплывет, то хорошо. Это показатель. А холиварить что лучше, что хуже... вряд ли у кого возникнет желание. Все давно определились какой шаблонизатор юзать и юзать ли вообще.

Сейчас раз в три месяца потому что смарти 3 не такой косячный как предыдущие версии. Все ясно и понятно. Это я сильно углубился, чтобы от шаблонизатора не уходить и сделать все его средствами.
Лучше шаблонизатора нет, а использование шаблонизаторов никто не отменил. Поэтому можно предположить, что люди как и прежде пользуются смарти. В противном случае я бы видел кучу тем про другие шаблонизаторы, однако их нет.

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

И не надо все списывать сначала на мое общение, потом на отсутствие актуальности смарти и т.д. Общаюсь я нормально. Больше всего бесит когда говорят не по теме, вот на всех форумах так, как бабки старые. Почему если я приду к стоматологу с проблемой во рту, он не начинает говорить: ага... у вас тут сыпь по коже, нервишки пошаливают, нос заложен и т.д.

И зачем флудить если не знаешь как решить проблему и пытаться оптимизировать мой код? Я же не за этим сюда обратился. Наверное если я сделал так, значит надо именно так.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22766
Пользователь №: 20039
На форуме: 7 лет, 1 месяц, 15 дней
Карма: 600




filomax
"Подскажите шаблонизатор, который лучше смарти".
Ответ: ПХП.

Ты в шоке от ответа?


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Закрытая темаСоздание новой темыСоздание опроса