Пагинация страниц - каждую отдельную страницу надо создавать в БД?

123 4
D
На сайте с 14.01.2007
Offline
153
#11
postavkin:
Т.е. чтобы завести один новый товар - например ламинат tarkett bremo 47, мы бегаем по разным таблицам и заводим характеристики товара (то есть в нужном поле таблицы ставим id этого нового товара?)

грубо: да

postavkin:
Просто тема ушла немного в другое русло...
не,не:) просто чтобы решить вашу проблему, пришлось начать издалека:)
P
На сайте с 06.01.2009
Offline
601
#12
wwwwww:
Почитайте теорию для начала.
Это ж как в первый класс пойти и не уметь читать.
ПРоектирование БД
Пагинация

Спасибо, большое. Обязательно почитаю.

Но допустим я все таки отобрал товары, да криво, но пока проблем нет. Переделаю позже.

Мне сейчас не понятно другое

D
На сайте с 14.01.2007
Offline
153
#13
postavkin:
Чтобы добавить новую статью на сайт, я захожу в таблицу бд 'statji' и добавляю новую запись - вношу урл (будет урлом страницы новой статьи), h1, title, content и т.д. Т.е. я назначаю урл и прочие данные.
Не могу спроецировать эту систему на страницы подбора материалов...

ээээ... урл=тайтл=h1. это для начала.

потом статья=товар, автор, число, тэги - свойства товара

P
На сайте с 06.01.2009
Offline
601
#14
Dinozavr:
грубо: дане,не:) просто чтобы решить вашу проблему, пришлось начать издалека:)

Не могли бы вы мне пояснить - как index.php определять должен существует страница или нет?

Может я нифига не понимаю, так как сделал не правильно изначально?

У меня index.php проходит все таблицы, смотрит - есть ли в какой из них текущий урл...если есть - определили раздел. Раздел определили - выводим соответств данные.

---------- Добавлено 13.11.2012 в 14:24 ----------

Dinozavr:
ээээ... урл=тайтл=h1. это для начала.
потом статья=товар, автор, число, тэги - свойства товара

и что все эти данные в одной таблице вести не правильно?

У меня в одной...и автор, и дата написания и подразел какой.

P
На сайте с 06.01.2009
Offline
601
#15

т.е. таблицы надо вести как то так?

Спасибо

но все равно не понял, почему эти данные нельзя вести в одной таблице, в первой - сразу всё о товаре.

jpg 116172.jpg
D
На сайте с 14.01.2007
Offline
153
#16
postavkin:
как index.php определять должен существует страница или нет?

1. пример: "/садасдф-гранит.пхп". в базе данных такой комбинации нет, вы пишите "товар не найден"

2. пример: "/красный-гранит_100500.пхп" в базе нет столько наименований->либо "не найдена", либо кидаете на "/красный-гранит.пхп"

postavkin:
и что все эти данные в одной таблице вести не правильно?
У меня в одной...и автор, и дата написания и подразел какой.
где вы храните дату регистрации автора? его пароль? что вы будете делать, если он захочет ник изменить?

как вы выведите все тэги, если у вас 1000000 статей?

P
На сайте с 06.01.2009
Offline
601
#17
Dinozavr:
1.в отдельную таблицу вы выносите то, что общее у многих товаров + по чему вам надо искать
артикул в таблицу к товару, "гранит" отдельно и + таблицу "соединения"(я не знаю как они правильно по-русски называются)

2. Пример "красный гранит". вы на главной, вам нужно построить меню.
идёте в таблицу "товар_св-товара", берёте id, по этим id в соотв. таблицах берёте название.

Не воткнул - почему сразу из таблицы 'товары' не взять товары у которых колонка цвет='красный' а материал='гранит'. Не понял зачем 2,3,5 таблиц. Ребят, я сделал так.

На странице получил 100 результатов.

Я наверное не так объясняю задачу, но задача просто - страница физически не существует, как сделать так чтобы index.php не выдавал ошибку 404 при нажатии на "пагинационную страницу" красный гранит-2.php

---------- Добавлено 13.11.2012 в 14:45 ----------

Dinozavr:
1. пример: "/садасдф-гранит.пхп". в базе данных такой комбинации нет, вы пишите "товар не найден"
2. пример: "/красный-гранит_100500.пхп" в базе нет столько наименований->либо "не найдена", либо кидаете на "/красный-гранит.пхп"

Теперь понятно. Я не так сделал? Спасибо Dinozavr заранее


<?
// определим url
$tekurl = $_SERVER['REQUEST_URI'];
$tekurl = substr($tekurl, 1); // удалим первый слеш
// соед с бд
include('is/bd-soedinenie.php');
// пробежимся по всем таблицам БД и поймем есть урл или нет и в какой таблице он
$tablemass=array("statyi_001st", "zaprosy", "osnova", "proizvoditeli", "kollekzii", "tovary", "statyi2", "poisk_materialov");
$nooshibka=0;
foreach ($tablemass as $value) {
$result = mysql_query("SELECT id FROM $value WHERE urlstranizi='$tekurl' LIMIT 1");
$vsego = mysql_num_rows($result);
if ($vsego>0) {$nashatable=$value; $nooshibka=1; break(1);}
}
// отдаем серверу ошибку 404
if ($nooshibka===0) { header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found');}
if ($nooshibka===1) {
//значит страница есть
if ($nashatable==='statyi_001st') {$razdel='statji';}
if ($nashatable==='zaprosy') {$razdel='zaprosy';}
и т.д.

У меня то существование урла проверяет по конкретному существованию записи...Нет записи с урлом - нет страницы.

ПОэтому и возник у меня гемор с пониманием того - как я могу сделать чтобы страницы открывались по ссылке red-laminat-2.php если в БД записан урл только red-laminat.php

IL
На сайте с 20.04.2007
Offline
435
#18
postavkin:
почему эти данные нельзя вести в одной таблице, в первой - сразу всё о товаре.

да можно, конечно.. Но особенности есть.

Вам теории не хватает. Вместо того, чтобы освоить бензопилу, продолжаете рубить топором..

http://www.codenet.ru/progr/vbasic/vb_db/1.php

в вики более полно, но менее интересно

Если нет желания читать, повторюсь.. хотя бы посмотрите, как сделано у других.

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
D
На сайте с 14.01.2007
Offline
153
#19
postavkin:
т.е. таблицы надо вести как то так?

не совсем:

товары:

id_name_artikul

1_полка_123

2_шкаф_234

свойства:

id_name

1_лакированая

2_не-обработанная

материал:

id_name

1_дерево

2_гранит

свойства_товара:

id_id-tov_id-sup

1_1_sv-1

2_1_мат-1

3_2_св-2

3_2_мат-2

т.е. полка лакированная из дерева и необработанный шкаф из гранита

P
На сайте с 06.01.2009
Offline
601
#20
ivan-lev:
Если нет желания читать, повторюсь.. хотя бы посмотрите, как сделано у других.

Есть желание читать, но материал понятен лицам которые хоть какое то обучение прошли. А я не проходил, поэтому нифига понять не могу. Решил взять тайм аут и не рубить топором. Буду читать.

Посмотреть как сделано у других никак - код никто не показывает :) Доступ к базе не дают...

---------- Добавлено 13.11.2012 в 15:01 ----------

Dinozavr, если у товара 10 свойств - лакированная/нелакированная, черная/белая/красная, большая/маленькая/средняя, италия/россия/китай, 2метра/ниже/выше и т.д. как тогда быть...не понял.

Ладно, спасибо. Ушел читать.

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий