Добрый вечер, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались. | |
| Похожие темы |
|
lissnov | При импорте товара, если значение поля спецификации не заполнено, соответственно в базе значение поля меняется с NULL на пустое поле, и соответственно при извелечении полей из столбца, извлекаются и поля без значений, и при выводе через foreach выводятся пустые строки. Помогите правильно написать код, чтоб пустые значения не выводились или подскажите как можно програмно менять пустое значение на NULL при импорте, где-то найти в классах Привожу пример кода, который используется сейчас для выбора значения Spez_1: /* protected function getFiltername() { $cid = intval(Arr::getRequest('cid')); $db_cid = "(Kategorie = '" . $cid . "')"; $namefilter = $this->_db->cache_fetch_assoc("SELECT Spez_1 FROM " . PREFIX . "_shop_kategorie_spezifikation WHERE {$db_cid}"); return $namefilter; */ вывод значения в шаблоне: /* {foreach from=$filter_name item=namefilter} {$smarty.request.namefilter == $namefilter}{$namefilter} {/foreach} */ Помогите пожалуйста практически и советами, понимаю, что многого не знаю, но пытаюсь научиться. Спасибо всем, кто отзовется. |
SX | Не совсем понятно что хотите сделать. Судя по запросу вы хотите вывести значение только одной строки, тогда не нужно применение foreach в шаблоне. И не видно строки передачи в шаблон. Если хотите не показывать строки с определенными значениями, то проще отграничить это в запросе, а не выводить и потом уже проверять на пустоту. Сделаю простой пример, скорее это то что вам и надо
Но что то не так, получается только одно значение, а скорее всего вам нужны все значения для категории, так вернее должно быть
Таким образом мы получаем все подмножество строк, что бы ограничить не нужные значения можно сделать гораничение в запросе по принципу AND Spez_1 != NULL AND Spez_1 != '' Хотя можно сделать проверку и в цикле while, что выше в примере, добавив проверку
Но правильней сделать проверку на равенство ключа namefilter из маасива request, в том же while, что в примере выше, и сразу получить массив нужных значений, а вернее одно судя по условию. И в итоге озадачивает мысль, зачем вы делаете запрос в базу, получаете массив, передаете в шаблон, а потом условием отсекаете и получаете значение которое уже у вас есть в ограничивающем условии, а точнее вот оно $smarty.request.namefilter??? | |||
lissnov | Огромное спасибо администратору за помощь. Во всем разобрался, всё получилось, очень помогли ваши примеры кода, а мысль которая Вас озадачивала объясняется моим плохим знанием програмирования, так как я самоучка, учусь на своих ошибках, форумах и примерах, особо подсказать некому, а желание научиться есть. Ваша система очень понравилась, но хотелось бы многое доработать, что я и пытаюсь сделать с переменным успехом. Еще вопрос не по теме, чтоб не открывать новую: как можно реализовать что бы можно было назначать альтернативный шаблон не каждому товару по отдельности, а сразу всей категории товаров. И можно ли реализовать показ просмотреных товаров в "карусели". Еще раз спасибо за помощь. |
|
Похожие темы | Предыдущая тема | Следующая тема |
Быстрый переход: |
Темы | Сообщения | Пользователи | |
За сутки: | 0 | 0 | 0 |
За неделю: | 0 | 0 | 0 |
За месяц: | 0 | 0 | 1 |
Всего: | 1444 | 9453 | 3410 |
Мы приветствуем нового участника: dota812651 |