Eticaret sistemi yazıyorum işin zor kısımlarına geldim.
Benim fikir istediğim kısım ürünler ve kategoriler kısmıyla ve bunların ilişkisi ile olacak
Tablo yapım
CREATE TABLE `products` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`product_id` int(11) NOT NULL,
`name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`code` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4864 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `categories` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`parent` int(11) NOT NULL,
`name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=103 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `product_category_relations` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`product_id` int(11) NOT NULL,
`category_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2371 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Ben yeni kayıt ekler iken ilişki tablosuna kayıt atabiliyorum fakat ürünu düzenlerken ilişkiler tablosunu güncelleyemiyorum. Biraz daha açayım konuyu ;
Bir ürünü güncellerken ürünün kategorisi varsayalım
Bilgisayar > Pc kategorisinde olsun doğal olarak
`product_category_relations` tablosunda (product_id = 1 category_id = 1)(product_id = 1 category_id = 2) gibi kayıt olacaktır.Ben ürünün kategorisini değiştirmek istediğimde varsayalım
Kampanyalar > Bilgisayar kategorisi altına atalım ben
`product_category_relations` tablosunda nasıl bir işlem yapmam lazım tabloyu silip tekrarmı kaydetmeme lazım.
(Not : toplu düzenle ekranında ilişki tablosunu silip tekrar yapmak sistemi yoruyor)
Bunun başka yolu varmı yoksa gene silip tekrar mı kayıt ataçam
Herkese Teşekkurler.