|
|
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
Подскажите, как можно было бы реализовать следующее? Есть таблица страниц - pages(int id, text text, int parent_id, string alias) К странцам обращаются по следующему адресу http://test.com/alias страницы 1/alias страницы 2/alias страницы 3/alias страницы 4/... Уровней может быть неограниченное количество. Подскажите, как модно было бы реализовать алгоритм поиска страницы? Не хотелось бы делать множество запросов к бд, но так же и не хотелось бы вытаскивать все записи из таблицы pages. Можно было бы реализовать, другим способом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 16:41 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
Как вариант разбить путь по / Затем составить запрос так, что количество джоинов будет равно количеству компонентов пути. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 16:50 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
HettКак вариант разбить путь по / Затем составить запрос так, что количество джоинов будет равно количеству компонентов пути. Как раз так сейчас и реализовываю, есть еще идея с функцией ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 17:06 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
select * where alias = последний алиас? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 18:00 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
ScareCrowselect * where alias = последний алиас? этот вариант не катит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 18:51 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
можно еще выбрать в IN все алиасы а потом форечем пробежаться по массиву и проверить, что цепочка не нарушается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 18:59 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
Hettможно еще выбрать в IN все алиасы а потом форечем пробежаться по массиву и проверить, что цепочка не нарушается. Так сейчас и сделал) спасибо, но все же интересно как реализовывются подобные алгоритмы, например отображение вложенных комментариев и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 20:09 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
авторо все же интересно как реализовывются подобные алгоритмы, например отображение вложенных комментариев и т.д. зависит от субд. для mysql y нас nested set ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 23:31 |
|
||
|
Реализация вложенных страниц
|
|||
|---|---|---|---|
|
#18+
spider13, 1. в таких случаях иногда создают поле full_alias в котором хранят весь путь. И там уже как скарекрой написала. 2. В кеше хранить полные пути до каждой старницы 3. либо делать запрос вида: Код: php 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2013, 09:00 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38116402&tid=1464203]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 343ms |

| 0 / 0 |
