Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,190
1

Вывод блока с данными из бд

10.03.2013, 18:19. Просмотров 961. Ответов 10
Метки нет (Все метки)

Как вы выводите блок с данными из бд?
Вот мой вариант:
PHP
1
2
3
4
5
6
echo '<div class="item">
                <div class="itemTitle">'.$vip.$row["itemBrand"].": ".$row["itemName"].'</div>
                <div class="itemDescription">'.$row["itemDescription"].'</div>
                <div class="">
                <div class="itemImg"><img src="'.$row["itemImage"].'"/></div>
            </div>';
но мне как то говорили, что это не очень... Как можно по-другому выводить?(таких блоков требуется столько, сколько в бд строк)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2013, 18:19
Ответы с готовыми решениями:

Вывод оформленной таблицы с данными в цикле
Добрый вечер! Есть html таблица в которую подставляются значения из БД! При...

Вывод блока, если пользователь авторизован
Как лучше реализовать вывод блока например &quot;ваше имя: ...&quot; если есть у клиента...

Вывод блока в зависимости от адреса страницы
Ребят нужно написать код: Если адрес страницы = &quot;xxx&quot; тогда выводим &lt;div&gt;...

вывод готового html-блока в переменную
я разу скажу: знаю о том, что так не стоит делать, это неправильно и все такое,...

Вывод определенной строки из всего блока в таблице
Может и не так задал заголовок, суть вот в чем. Мне нужно вытащить из таблицы...

10
Николай12
-7 / 15 / 0
Регистрация: 13.05.2012
Сообщений: 169
10.03.2013, 18:44 2
Можно и по другому, если у вас есть шаблонизатор:
HTML5
1
2
3
4
5
6
<div class="item">
                <div class="itemTitle">{VIP}{itemBrand}:{itemName}</div>
                <div class="itemDescription">'{itemDescription}</div>
                <div class="">
                <div class="itemImg"><img src="{itemImage}"/></div>
            </div>
Добавлено через 4 минуты
PHP
1
2
3
4
5
$array = array(
'{itemBrand}' => $row['itemBrand'],
//и т.д.
$templater->loadTpl("template.tpl", $array);//Загружаем шаблон и передаём в него массив с данными
echo $templater->render();
Примерно такой класс можно сделать. Я раньше таким простеньким шаблонизатором пользовался

Добавлено через 5 минут
Если требуется все строки вывести таким образом:
PHP
1
2
3
4
5
6
7
8
while($row = mysql_fetch_array($sql)) {
$array = array(
'{itemBrand}' => $row['itemBrand'],
//и т.д.
);//Массив с определением для шаблонизатора
$templater->loadTpl("template.tpl", $array);//Загружаем шаблон и передаём в него массив с данными
echo $templater->render();//Выводим сгенерированный HTML код страницы.
}
Только этот скрипт будет не очень быстро работать, если в таблице очень много строк
0
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,190
10.03.2013, 18:47  [ТС] 3
шаблонизатора нет, да и не хотелось бы его использовать.
0
Николай12
-7 / 15 / 0
Регистрация: 13.05.2012
Сообщений: 169
10.03.2013, 18:54 4
Цитата Сообщение от ProstoMad Посмотреть сообщение
шаблонизатора нет, да и не хотелось бы его использовать.
Значит все строки можно вывести без использования шаблонизатора и всяких других классов:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
...Всякий код
*/
$sql = mysql_query("Код запроса к базе данных");
while($row = mysql_fetch_array($sql)) {
echo '<div class="item">
       <div class="itemTitle">'.$vip.$row["itemBrand"].": ".$row["itemName"].'</div>
       <div class="itemDescription">'.$row["itemDescription"].'</div>
       <div class="">
       <div class="itemImg"><img src="'.$row["itemImage"].'"/></div>
       </div>';
}
/**
......Всякий код
*/
0
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,190
10.03.2013, 19:23  [ТС] 5
Я так и вывожу. Я имею ввиду, что мб выводить можно как-то не пихая всё в echo, потому что как-то не красиво выглядит
0
Николай12
-7 / 15 / 0
Регистрация: 13.05.2012
Сообщений: 169
10.03.2013, 21:12 6
Цитата Сообщение от ProstoMad Посмотреть сообщение
Я имею ввиду, что мб выводить можно как-то не пихая всё в echo, потому что как-то не красиво выглядит
PHP
1
2
3
4
5
6
7
8
9
10
11
/**
index.php
...Всякий код
*/
$sql = mysql_query("Код запроса к базе данных");
while($row = mysql_fetch_array($sql)) {
include "template.php";
}
/**
......Всякий код
*/
PHP
1
2
3
4
5
6
<div class="item">
<div class="itemTitle">'.$vip.$row["itemBrand"].": ".$row["itemName"].'</div>
<div class="itemDescription">'.$row["itemDescription"].'</div>
<div class="">
<div class="itemImg"><img src="'.$row["itemImage"].'"/></div>
</div>';
"
В этом способе echo вообще не используется
0
Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 820
11.03.2013, 14:18 7
Цитата Сообщение от Николай12 Посмотреть сообщение
Можно и по другому, если у вас есть шаблонизатор:
HTML5
1
2
3
4
5
6
<div class="item">
                <div class="itemTitle">{VIP}{itemBrand}:{itemName}</div>
                <div class="itemDescription">'{itemDescription}</div>
                <div class="">
                <div class="itemImg"><img src="{itemImage}"/></div>
            </div>
Добавлено через 4 минуты
PHP
1
2
3
4
5
$array = array(
'{itemBrand}' => $row['itemBrand'],
//и т.д.
$templater->loadTpl("template.tpl", $array);//Загружаем шаблон и передаём в него массив с данными
echo $templater->render();
Примерно такой класс можно сделать. Я раньше таким простеньким шаблонизатором пользовался
это не шаблонизатор, а хрень полнейшая.

ProstoMad, читать до просветления.
http://www.phpinfo.su/articles/practice/shablony_v_php.html
0
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,190
12.03.2013, 10:04  [ТС] 8
Василий Макогон, Спасибо) Но всё же вопрос остался.
Где то видел что то типа
HTML5
1
2
3
<?php for()?>
ХТМЛ КОД
<?php endfor?>
можно сделать что то типа такого?
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16753 / 6644 / 864
Регистрация: 12.06.2012
Сообщений: 19,897
Завершенные тесты: 1
12.03.2013, 11:51 9
Цитата Сообщение от ProstoMad Посмотреть сообщение
можно сделать что то типа такого?
а зачем? Есть же альтернативный синтаксис (его наверное и видели)
http://www.php.net/manual/ru/control-structures.alternative-syntax.php
0
Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 820
12.03.2013, 11:52 10
Цитата Сообщение от ProstoMad Посмотреть сообщение
Василий Макогон, Спасибо) Но всё же вопрос остался.
Где то видел что то типа
HTML5
1
2
3
<?php for()?>
ХТМЛ КОД
<?php endfor?>
можно сделать что то типа такого?
ещё раз статью прочитайте и комменатрий KOPOJI
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16753 / 6644 / 864
Регистрация: 12.06.2012
Сообщений: 19,897
Завершенные тесты: 1
12.03.2013, 11:56 11
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
/**
...Всякий код
*/
$sql = mysql_query("Код запроса к базе данных");
while($row = mysql_fetch_array($sql)) : ?>
<div class="item">
       <div class="itemTitle"><?php echo $vip, $row["itemBrand"]; ?>: <?php echo $row["itemName"]; ?></div>
       <div class="itemDescription"><?php echo $row["itemDescription"]; ?></div>
       <div class="">
       <div class="itemImg"><img src="<?php echo $row["itemImage"]; ?>"/></div>
       </div>
<?php endwhile;
/**
......Всякий код
*/
Добавлено через 1 минуту
Не нравится альтернативный синтаксис - используйте шаблонизатор - twig, smarty или еще что

Добавлено через 1 минуту
Цитата Сообщение от Николай12 Посмотреть сообщение
PHP
1
2
$templater->loadTpl("template.tpl", $array);//Загружаем шаблон и передаём в него массив с данными
echo $templater->render();//Выводим сгенерированный HTML код страницы.
тогда уж проще использовать strtr()
0
12.03.2013, 11:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2013, 11:56

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

Вывод блока div только при непустом $row["description"]
Добрый день. Подскажите, пожалуйста, правильное условие, для того чтобы...

Вывод информации из БД при входе на сайт и вывод одного последнего добавленного блока
Здравствуйте! Немного столкнулся с проблемой: Есть небольшой сайт, пробный,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru