Извращение. Цикл в цикле.

Разработка своих веб-приложений и страничек

Извращение. Цикл в цикле.

Сообщение Zver » 22 фев 2010, 00:22

Сейчас стараюсь написать простенький скрипт форума.
На главной странице выводятся форумы, и под форумы.
Т.е. в БД есть таблицы:

forums (parent_forum),
forums_themes (forum_id),
forums_posts (theme_id).

Получается вложенная система. При выводе главной странницы у меня считываются основные форумы, тобишь с "parant_id" = 0. А уже под ними форумы, ID которых равен родительскому форуму.

В итоге - у меня выходит цикл в цикле. Можно ли использовать такую систему?
Сам понимаю, брёд, но куда деваться (=
Zver
Активный участник
 
Сообщения: 1333
Зарегистрирован: 18 дек 2008, 18:51
Откуда: Саратов, Заводской

Re: Извращение. Цикл в цикле.

Сообщение Костик » 22 фев 2010, 02:41

не понял
FreeBSD 9.2 and Fedora 18 user
Аватара пользователя
Костик
Активный участник
 
Сообщения: 1944
Зарегистрирован: 03 сен 2007, 02:15

Re: Извращение. Цикл в цикле.

Сообщение Zver » 22 фев 2010, 13:40

Чорт (=
В общем - у меня при выводе разделов используется два цикла:

Код: Выделить всёРазвернуть
|--- Раздел 1----|
|                |
||- форум 1      |
||- форум 1      |
|                |
|--- Раздел 2----|
|                |
||- форум 3      | Цикл 1 (Форумы выводятся в цикле 2)
||- форум 4      |
|                |
|--- Раздел 3----|
|                |
||- форум 5      |
||- форум 6      |
|----------------|


Т.е. первый цикл выводит все разделы, а второй цикл выводит форумы.
Выходит что у меня получчается цикл в цикле.

И вот только сейчас понял что такая система не работает. Как быть? :(
PS: Циклы "for"
Zver
Активный участник
 
Сообщения: 1333
Зарегистрирован: 18 дек 2008, 18:51
Откуда: Саратов, Заводской

Re: Извращение. Цикл в цикле.

Сообщение doliar » 23 фев 2010, 00:31

P.S while ?
Аватара пользователя
doliar
Автор
 
Сообщения: 732
Зарегистрирован: 16 янв 2008, 15:05
Откуда: Саратов, Волжский р-он
Домен: tbdev-info.vfose.ru

Re: Извращение. Цикл в цикле.

Сообщение Кадет » 23 фев 2010, 10:32

for, while, do while.
P.S. это не извращение, а в полне рабочий вариант :) Вложенные циклы называется :)
Кадет
Активный участник
 
Сообщения: 1497
Зарегистрирован: 23 апр 2008, 21:08

Re: Извращение. Цикл в цикле.

Сообщение Zver » 24 фев 2010, 14:47

Заметил что for не работает, а do while дублирует превую запись....
Zver
Активный участник
 
Сообщения: 1333
Зарегистрирован: 18 дек 2008, 18:51
Откуда: Саратов, Заводской

Re: Извращение. Цикл в цикле.

Сообщение Кадет » 24 фев 2010, 16:23

Что значит фор не работает?
Кадет
Активный участник
 
Сообщения: 1497
Зарегистрирован: 23 апр 2008, 21:08

Re: Извращение. Цикл в цикле.

Сообщение Zver » 24 фев 2010, 16:36

Выполняется только первый подцикл, остальные нет..
Zver
Активный участник
 
Сообщения: 1333
Зарегистрирован: 18 дек 2008, 18:51
Откуда: Саратов, Заводской

Re: Извращение. Цикл в цикле.

Сообщение Кадет » 24 фев 2010, 17:38

Ну смотри: например с++, синтаксис понятен так что на пхп пости так же:
Код: Выделить всёРазвернуть
for(i=0; i<2; i++)
{
printf('lab1');
for(j=0; j<2; j++)
{
printf('lab2');
}
}

вывод будет что-то типо:
lab1
lab2
lab2
lab1
lab2
lab2
Кадет
Активный участник
 
Сообщения: 1497
Зарегистрирован: 23 апр 2008, 21:08

Re: Извращение. Цикл в цикле.

Сообщение Zver » 24 фев 2010, 18:21

Делал так:

Код: Выделить всёРазвернуть


for($i=0; $i<$all_sections; $i++){
   $row_sections = mysql_fetch_array($res_sections);
   echo $row_sections['title']." | ".$row_sections['description']; // Вывод раздела

for($i=0; $i<$all_forums; $i++){
   $row_forums = mysql_fetch_array($res_forums);
   echo $row_forums['title']." - ".$row_forums['date']; // Вывод форумов в данном разделе
}

}
 

И выводится у меня все разделы, и только рез-ат первого подцикала...
Zver
Активный участник
 
Сообщения: 1333
Зарегистрирован: 18 дек 2008, 18:51
Откуда: Саратов, Заводской

След.

Вернуться в PHP, HTML, CSS...

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 46

cron