Артур, Ну вот и ответ...Если не можете поставить капчу, добавьте в форму регистрации один input type=hidden, и проверяйте его в обработчике, если он заполнен, а робот его обязательно заполнит, то обрывайте всё дальнейшнее выполнение скрипта.
Цветочный Гений, Так большинство и начинало, и многие начинали тогда, когда интернет не был переполнен обучающими материалами, все делалось потом и кровью.
Многие после прохождения базовых знаний по php задавались вопросом: "И что мне делать дальше с полученными знаниями", пробовали сажать макеты на движки, по ходу дела разбирались как что работает...углублялись в ООП, брали фреймворки, опять же, пилили и пилили, разбирались в устройстве того или иного, весь низкоуровневый квест - как делать авторизацию, корзину, пагинатор, завязки с платежными системами, сторонние апи и многое другое.
Но весь спектр трешняка, слез и нервных срывов вкупе с опытом и закалкой, проклиная этих "заказчиков", которые придумывают такие задачи - все таки, можно получить уже непосредственно в студии, опять же, рыдая и с мыслями о недельном запое, просить помощи у более опытных коллег, которые в итоге помогут перевернуть ваше представление о той или иной насущной проблеме в другое русло, и эта вся мистическая магия уже через год будет казаться тривиальной.
Подобных тем здесь пруд пруди, и исток всего этого, о чем надо прямо в шапке сайта написать - старание, усердие и усидчивость, вот тогда будет толк, ну и неплохо было бы все таки, если нет такой возможности, найти какой-то источник информации по (ненавижу это пиндосное представление) - БестПрактикс, т.е. то, как лучше делать и не сбить себе базу, не сбить на начальном этапе себе все представление, чтобы не стать таким же мутантом, о котором я писал выше.
simgoldin, Трудно говорить не видя макета, но судя по тому, по вашим словам, что в исходнике отсутствует систематика, то стоило бы таки поговорить с дизайнером, спросить его, чем он руководствовался, когда лепил его
Цветочный Гений, Соседний комментатор верно говорит, как вариант - поискать себе местечко, где будет команда, у которой можно поучиться. Ну а, что по поводу костылей, то такими же методами реализованы многие крупные проекты, названия которых даже писать не нужно...
Что по поводу "кажется", разбирайте интересующие вопросы и алгоритмику например тут, на тостере, ищите в поиске в конце концов, и опять же, повторюсь, с опытом придет понимание, как делать не нужно...
Хотя, вспоминая таких мутантов как Рyсаков, это понимание приходит не ко всем
Максим Тимофеев, На момент написания, ссылки на код не было. Наложение слоев в данном контексте - сванговать, и сванговать удалось один вариант - z index
Тимур Худиев, Лучше бы отдельными записями, что-то может изменится и, допустим, характеристику "высота" нужно будет для отдельных категорий чем то дополнить, изменить, а что будет в итоге? Правильно, поменяется везде, и чтобы такого не было, пусть лучше будет 10 характеристик "высота" для 10 разных категорий, но они будут "родными", а не общими.
В будущем, что-то еще в характеристиках может поменять, например, для разных категорий будет установлено какое-то дефолтное значение, что-то вроде "ОТ"...много, вообщем, различных вариаций масштабирования данного
Тимур Худиев, Ах, да, точно, совсем же про это забыл, где хранить значения характеристик.
Да, нужна еще одна таблица, где будет ИД товара, ИД характеристики и ее значение
Тимур Худиев, Другое дело, если для каждого отдельного товара в одной категории могут быть разные характеристики, но и это, по сути, можно решить этой же таблицей и добавить еще одно поле, где тип сущности будет либо объект(товар), либо категория.
dmitriu256, Настолько, насколько это будет соответствовать вашим потребностям. Если нужно обнулить, обнуляйте, ведь это же решит Вашу проблему? Да, решит, ну и, собстна, всё
vladimirr89, Не за что. Там много лишнего и непригодного, но сам смысл, я думаю, понятен. В кнопку показа в дата пишем номер страницы и после каждого саксесса, добавляем к нему +1, и с этими индексами, который по сути и являются номерами страниц пагинации, по этому смещению делаем выборку из БД и пишем результат в блок. Всё, проще некуда, только в человеческий вид всё это надо привести.
vladimirr89, Вот, начните с ванили, как это делается чистым пыхом. Принцип тот же, забрать из БД записи со смещением, с каждой новой страницей пагинатора смещать выборку из БД на то кол-во строк, которое соответствует этой странице.
Вся суть идентична, только вместо перехода по странице, у Вас тянется сие из БД аяксом и аппендится в блок вывода.
Бегло взглянул на сей пример, он достаточно ясно дает понять, как он работает, а поймете как работает пагинатор -поймете как сделать это аяксом.
Потратите день сейчас, разберетесь, и никогда более проблем с этим не возникнет, в отличии от того, если Вам сейчас кто-то готовый пример даст.