Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2017, 00:58   #1
Lara Semenova
 
Регистрация: 29.08.2017
Сообщений: 7
Стрелка Как вывести элементы БД в цикле в виджет аккордеон?

Здравствуйте, у меня есть база данных с таблицей о книгах (materials). Нужно вывести каждый материал в виджет аккордеон так, чтобы сначала было видно лишь название, а затем можно бы было развернуть и увидеть информацию полностью (автор год итд). Я попыталась это сделать с помощью jquery iu, однако оказалось, что данная функция действует только на первый материал. В чем ошибка? Вот код: (отрывок)
<?php
foreach ($materials as $material)
{
echo '<div id="accordion"><h3>'.$material["id_materials"].'.
'.$material["title"].'</h3><div>
<p>Автор(ы): '.$material["author"].'<br>
Год разработки: '.$material["year"].'<br>
Краткое описание: '.$material["abstract"].'<br>
Дата добавления на сайт: '.$material["add_date"].'</p>
</div> </div><script>
$( "#accordion" ).accordion( {active: 1, collapsible: true});
</script>
';
}
?>


И еще приложен скрин с сайта
Пожалуйста, ответьте.
Изображения
Тип файла: jpg 333.jpg (99.9 Кб, 118 просмотров)
Lara Semenova вне форума Ответить с цитированием
Старый 29.08.2017, 08:03   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

1. Форматируйте код тегами
2. Не надо в цикле сам скрипт выводить и id заменить на класс
Код:
<?php 
foreach ($materials as $material) {
echo '<div class="accordion"><h3>'.$material["id_materials"].'. 
'.$material["title"].'</h3><div>
<p>Автор(ы): '.$material["author"].'<br>
Год разработки: '.$material["year"].'<br>
Краткое описание: '.$material["abstract"].'<br> 
Дата добавления на сайт: '.$material["add_date"].'</p>
</div>
</div> ';
}
echo '<script>
$( ".accordion" ).accordion( {active: 1, collapsible: true});
</script>'
?>
P.S. не проверял... но должно помочь
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Аккордеон и модуль пагинации в нем: как оставить раскрытую панель открытой Blondy PHP 6 16.05.2014 22:39
Как вывести записи(строк) таблици базы данных mdb в memo, в цикле for? Женя32 БД в Delphi 13 13.01.2013 22:41
как вывести элементы стека в обратном порядке ichigo9911 Общие вопросы C/C++ 4 26.03.2012 23:51
Скажите в чем ошибка, как в массиве найти арифметическую прогрессию и вывести элементы на экран? Lodyr Помощь студентам 0 21.12.2009 16:32
Как вывести в цикле for ... do строки? ViTYAi2007 Помощь студентам 14 27.03.2008 05:47