2011-11-01 55 views
2

我有一個表格中添加一個產品到所謂的「產品」這種形式的數據庫表也與複選框類別的UL,產品可以在多個類別,因此當表單提交我需要更新產品表和product_categories表。PHP形式產品和類別

產品表將舉行產品ID和product_categories表將舉行產品ID只與類別ID因此創建一個一對多的關係。

然而,這是我很爲難,我可以寫在精美的產品,但我不能確定的語法來寫product_categories表也是如此。

任何人都可以幫助我。

沒有的代碼,但我不知道該寫什麼!

感謝

賈斯汀

+0

相關:http://stackoverflow.com/questions/4420700/database-modeling-product-with-1-or-more-categories –

回答

2

你需要寫兩個SQL語句。在第一條SQL語句之後,您需要您剛剛插入的產品的ID,您可以按如下所示執行此操作。

$q = "INSERT INTO product (`name`) VALUES ('my cool thing')"; 
$r = mysql_query($q); 

$productId = mysql_insert_id(); 

$q = "INSERT INTO product_category (`product_id`, `category_id`) VALUES ({$productId}, {$categoryId})"; 
$r = mysql_query($q); 

注:這是處理這個一個相當簡單的方式,但它會幫助您開始。你可能要考慮使用MVC框架和PDO或ORM(或數據庫抽象的另一種形式)等,使您的生活更輕鬆。

1

如果我正確理解你的問題,我想你會需要遍歷的類別,併爲每個類別,運行一個腳本插入到特定類別的產品組合添加到PRODUCT_CATEGORY表。

-something這樣的:

$product = prodId; 

foreach ($categoryIds as $categoryId) { 

    $query = "insert into ".$categoryTable." values ('".$product."', '".$categoryId."')"; 

    // Run $query 
} 
相關問題