1. Я в итоге сделал, md5(md5(solt).md5(pass).md5(solt)). Не без фанатизма получилось.
2. От преждевременной оптимизации отказываюсь. Убедили.
3. С адаптерами и шаблонами проектирования пошел разбираться. С ООП у меня тяжело, так что будет не скучно...
(Добавление)
Мелкий пишет:
придёте к решению, что всё это надо выбросить и писать нормально
Собственно, уже пришел... Попробую начать с начала.
Основой проекта должна стать cms с функционалом схожим с функционалом доски объявлений. О дополнительных функциях, которые должны сделать проект уникальным, пока, говорить не имеет смысла. Расскажу, что должно быть в основной части. Примеры на авто, так проще.
По типам страниц:
1. Должны быть страницы каталога сортирующие товары по производителю (бмв/мерседес/ауди), наименованию товара (автомобиль/грузовик/мотоцикл) и сфере применения товара (бизнес авто/семейное авто/авто выходного дня).
2. Должна быть страница товара. На ней общая информация, технические характеристики, фотографии и прочая ерунда. Так же на странице товара должен быть список предложений (объявлений), по этому товару. Эти предложения содержат минимальную информацию 2-3 поля, но их очень много.
3. Должен быть поиск и расширенный поиск (примерно как на авто.ру).
4. Должен быть личный кабинет пользователя.
По функционалу:
1. На странице товара должны высвечиваться конкурирующие товары (предположим для бмв это будут мерседес и ауди соответствующих моделей).
2. Многоязычность. Языков очень много, почти все (боюсь представить, что там с кодировками начнется). Для каждой страны свой домен 3го уровня (как в википедии).
3. Функции только для пользователей (ну это банально).
4. Псевдостатические страницы на всех языках.
Вот как-то так должна выглядеть основа. Дальше весь функционал будет крепиться к этой основе.
Как лучше структурировать БД? Как лучше с многоязычностью быть? Как лучше организовать структуру движка? Вопросов море...
Если не сложно, подскажите, с чего начать, чтоб было по уму все? Задайте вектор правильного движения!