Forum Webscript.Ru

Программирование => PHP => Тема начата: stanlee от 23 Марта 2004, 12:15:58

Название: multiple
Отправлено: stanlee от 23 Марта 2004, 12:15:58
Здравствуйте.
Я меня такая проблема - решил написать каталог с добавлением одной и той же ссылки в разные директории
но я не ставливался с такой задачей
вот и возник вопрос а как при выводе select multiple указывать какие директории уже выбраны например.
и еще вопрос в каком виде такого рода инфа хнаится в базе

у меня шас 1,2,3,4,5 и дт а значение яцейки varchar - правильно ли это?
если можете подсказите где почитать или сами а то я что то искал и ничего не нашел - может запрос не так давал?
Название: multiple
Отправлено: tserbis от 23 Марта 2004, 12:46:01
Нужно 3 таблицы - http://forums.webscript.ru/showthread.php?threadid=16239 .
Ставить selected в нужных options.
Только числа? Тогда varchar - не правильно.
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 16:40:46
Цитировать
у меня шас 1,2,3,4,5 и дт а значение яцейки varchar - правильно ли это?


Если не правильно то в каком виде и в какой ячейке хранят такие данные?
Название: multiple
Отправлено: tserbis от 25 Марта 2004, 16:53:38
stanlee,
А! Я понял... У тебя такие строки \'1,2,3,4,5\' хранились, поэтому varchar был.
Теперь у тебя будет 3 таблица связок с двумя полями: ID ссылки, ID директории.
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 16:56:08
у меня короче как ссылка хранит в себе данные о директорях в которых она должна выводиться
например
 ссылка 1 директории 1,2,3,4,5,6,7,8,9
т.е выводится в 1-9 директории
вот я и спрашиваю как такой тип данных хранить и в какой ячейке
Название: multiple
Отправлено: tserbis от 25 Марта 2004, 17:07:29
Если ничего не менять, то тип выбран правильно.
Но правильно (ты об этом задавал изначальный вопрос?) - 3 таблица. Перечитай этот тред.
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 17:09:53
Почему три таблицы - правильно?

Да я и не совсем понял как у него там данные хранились в третьей таблице
Название: multiple
Отправлено: ThE0ReTiC от 25 Марта 2004, 17:30:06
stanlee
выборка быстрее проходить будет
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 17:32:52
Блина а как данные хранить - я не понял
если не трудно объясни плз или кинь линку
Название: multiple
Отправлено: ThE0ReTiC от 25 Марта 2004, 17:38:11
http://forums.webscript.ru/showthread.php?s=&postid=104369#post104369
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 17:39:55
И че это такое?
ссыла на меня же
Название: multiple
Отправлено: ThE0ReTiC от 25 Марта 2004, 17:41:57
ну ты постинг внимательно прочитай - там все написано что как храниться
только внимательно
Название: multiple
Отправлено: AlieN от 25 Марта 2004, 17:45:14
Цитировать
Я меня такая проблема - решил написать каталог с добавлением одной и той же ссылки в разные директории
но я не ставливался с такой задачей

Первая таблица(каталоги):

create table catalogs
(
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT.
parent_id INT NULL,
title CHAR(250)
);

Вторая таблица(файлы):

create table files
(
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT.
parent_id INT NULL,
title CHAR(250)
);

Третья таблица(файлы в каталогах):

create table files_in_cats
(
file_id INT NOT NULL,
cat_id INT NOT NULL);
;
alter table `file_in_cats` add unique (
file_id`,`cat_id`);
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 18:00:17
будете смеяться но я не понял :)
вот бывает клинит на простой вещи и все тут
Название: multiple
Отправлено: tserbis от 25 Марта 2004, 18:35:05
Таблица директорий:
поле для ID директории
поле для названия директории
поле ещё для чего-то

Таблица ссылок:
поле для ID ссылки
поле для названия ссылки
поле ещё для чего-то

Таблица связей:
поле для ID директории
поле для ID ссылки

Если какая то ссылка относится к 4-м директориям, то в 3 таблице будет 4 записи с одинаковым ID ссылки и разными ID директорий
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 18:37:08
хм значит я правильно понял
но за каким х... делать несколько одинаковых ячеек если можно все спрятать в одной нерез запятую - разве это быстрее???

разве скорость выборки будет быстра?
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 18:41:38
Блина может кто аську даст на всякий случь на будущее?
Название: multiple
Отправлено: tserbis от 25 Марта 2004, 18:42:33
stanlee, это реляционная СУБД!!!
Сделаешь в первой и второй таблицах PRIMARY KEY на IDшники, в третьей - PRIMARY KEY (dirID, linkID).
Станет быстрее и удобнее. Верь нам...
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 18:44:40
ВЕРЮ Вы мне уже не раз подсказывали - спасиба в очередной раз
а аську я бы нерпочь чью нить заиметь у себя в контакте - общение намного быстрее
Название: multiple
Отправлено: ThE0ReTiC от 25 Марта 2004, 18:47:28
stanlee
http://www.codenet.ru/progr/vbasic/vb_db/1.php
Название: multiple
Отправлено: stanlee от 25 Марта 2004, 18:52:59
Не я не настолько не знаком с базой чтоб по этой ссылке ходить :)
Обижаешь :)

Я ж говорю иногда так заклинит что хоть стой хоть падай. А например завтра я это с полпинка сделаю. Хрен его поймешь - может правда поговорка - Тут без пива не разберешься?
Название: multiple
Отправлено: ThE0ReTiC от 25 Марта 2004, 18:58:10
Цитировать
stanlee:
Не я не настолько не знаком с базой чтоб по этой ссылке ходить
Обижаешь

сюдя по твоим вопросам ты с ней вообще не знаком
тема закрыта