Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Для профи > Разработка каталога


Автор: Рыжий 21.5.2006, 02:11
Нужно разработать Каталог, наподобии Яндекса.

Как лучше организовать структуру/логику/да и вообще все?

Как бы вы поступили? Имеется ввиду где размещать ядро? как разместить модули?(ведь кроме каталога еще может что то понадобиться...) 

Поначалу думал сделать папку 

admin 
   - mods
        - module one
            - index.php
            - functions.php

и т.д. Но что то не решился - слишком запутанно. Как вообще поступать в таких ситуациях. У кого были похожие ситуации?

     

Автор: -=Ustas=- 21.5.2006, 11:55
Тут уже подход чисто индивидуальный... 

Автор: Opik 21.5.2006, 18:45
Ладно файлы, базу продумать куда сложнее в данном случае. 

Автор: Рыжий 22.5.2006, 01:46
Я думаю что для каталога база должна имет (по минимуму) - 3 поля:
ID 
Name
is_sub

скажем данные такие:
1 | Компьютеры | 0
2 | Модемы         | 1
3 | Музыка          | 0
4 | принтеры      | 1

Я думаю смысл понятен - в третьем поле - id родительского каталога. Такое может быть???
Единственной проблемой остается то, что если скажем каталогов будет > 10 000 - будут проблему у MySql собственно на ней все делается.
  

Автор: -=Ustas=- 22.5.2006, 09:31
Цитата(Рыжий @  22.5.2006,  01:46 Найти цитируемый пост)
Я думаю смысл понятен - в третьем поле - id родительского каталога. Такое может быть???

Конечно.
Цитата(Рыжий @  22.5.2006,  01:46 Найти цитируемый пост)
Единственной проблемой остается то, что если скажем каталогов будет > 10 000 - будут проблему у MySql 

С чего ты взял?! Если ты коненчо захочешь отобразить иерархию всего дерева, то придеться делать рекурсивную выборку, это будет конечно не мало запросов... 

Автор: Рыжий 22.5.2006, 16:23
хм, ну может быть и да, не проверял...

 

Автор: Opik 23.5.2006, 15:06
-=Ustas=-, 
если правильно организовать - будет всё отлично.

Рыжий, 
Что такое запрос на 10 000 записей? чушь) вряд ли это узкое место в твоей программе. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)