Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Алгоритм редактирования тегов 
:(
    Опции темы
php5
Дата 6.7.2009, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет




Хотелось бы получить совет как лучше  сточки зрения оптимальности  реализовать  редактировку  тегов  уже привязанных к конкретной  статье,   т.е   имеется  уже пост и  у него есть  группа тегов  которые его характеризуют,   нужно  реализовать возможность  удаления,  изменения, добавить  тег .  структура БД такая :
Код



CREATE TABLE `post` (
  `id_post` INTEGER(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(20) COLLATE cp1251_general_ci DEFAULT NULL,
  PRIMARY KEY (`id_post`)

)ENGINE=MyISAM

CREATE TABLE `post_tag` (
  `id` INTEGER(11) NOT NULL AUTO_INCREMENT,
  `id_post` INTEGER(11) DEFAULT NULL,
  `id_tag` INTEGER(11) DEFAULT NULL,
  PRIMARY KEY (`id`)

)ENGINE=MyISAM

CREATE TABLE `tag` (
  `id_tag` INTEGER(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(20) COLLATE cp1251_general_ci DEFAULT NULL,
  PRIMARY KEY (`id_tag`)

)ENGINE=MyISAM



 

PM MAIL   Вверх
gta4kv
Дата 6.7.2009, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



И что Вы собрались тут оптимизировать?
PM MAIL   Вверх
icewind
Дата 7.7.2009, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 11.4.2009
Где: Ростов-на-Дону

Репутация: 20
Всего: 20



У тебя же есть связующая таблица post_tag. При удалении тэга у записи просто удаляй из этой таблицы связку запись - тэг. В основном все редактирование - работа с этой таблицей за исключением случаев когда надо редактировать сами тэги


--------------------
user posted image
PM MAIL Skype   Вверх
php5
Дата 7.7.2009, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



Цитата(icewind @ 7.7.2009,  19:12)
У тебя же есть связующая таблица post_tag. При удалении тэга у записи просто удаляй из этой таблицы связку запись - тэг. В основном все редактирование - работа с этой таблицей за исключением случаев когда надо редактировать сами тэги

Да  это все понятно , я хотел узнать как определить какой именно тег изменился при редактировании , или какой  удалился  что бы  потом провести нужные манипуляции в БД
PM MAIL   Вверх
icewind
Дата 7.7.2009, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 11.4.2009
Где: Ростов-на-Дону

Репутация: 20
Всего: 20



Можно просто при редактировании получить оригинальные тэги и сравнить с отредактированными, а можно просто удалить все тэги для соответствующей записи и вставить то, что пришло с формы снова. 


--------------------
user posted image
PM MAIL Skype   Вверх
php5
Дата 8.7.2009, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



Цитата

а можно просто удалить все тэги для соответствующей записи и вставить то, что пришло с формы снова. 

Интересный вариант, и как мне кажется, редактирование, таким образом,  будет  работать быстрей, чем  отслеживать какие теги были изменены или удалены 
PM MAIL   Вверх
icewind
Дата 8.7.2009, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 11.4.2009
Где: Ростов-на-Дону

Репутация: 20
Всего: 20



Возможно и быстрей. Но точно удобней  smile 


--------------------
user posted image
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0487 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.