有一個項目的目錄。每個項目都位於類別下。對於每個類別,我們都可以擁有不同權限的用戶(admin,expert,user)。當我們添加一個項目時,我們選擇可見性: (1) - 對所有人都可見 (2) - 僅顯示此項目發佈類別的管理員和專家 (3) - 對於該類別的所有成員可見物品被張貼 (0) - 隱藏所有(只有創造者可以看到)。用不同的權限搜索php
讓我說我有500個項目的標題中的單詞「鍵盤」。他們大多數在不同的類別。這些500中只有1項具有隱私 - 2(專家和管理員可以看到該類別)並位於「Logitech」類別下。當我作爲「Logitech」類別的管理員在搜索時鍵入「鍵盤」時,我應該看到搜索找到500個項目,並向我展示其中的10個項目。如果只是一個普通用戶(不是管理員或專家),在搜索中鍵入「鍵盤」,他將看到該搜索找到499項,並向他顯示該499項中的10個。
是抓取20個項目而不是10個,並檢查每個項目的隱私,然後在搜索結果中只顯示10個項目唯一可能的解決方案?但是,如果這20個都將「隱藏給用戶」呢?
在此先感謝您的回覆。
數據庫草圖:
1)個項目[ID,標題,CATEGORY_ID,能見度]
2)類:[ID,標題]
3)category_user [ID,USER_ID,CATEGORY_ID,作用(專家,管理員,用戶)]
4)用戶[ID,名稱]
我們需要更多的細節。你使用MySQL數據庫嗎?顯然你的搜索頁面上的PHP代碼?如果是,那麼這是真的,你只需要幫助就發送到數據庫的查詢? – weltschmerz 2012-08-09 13:17:11
我正在使用php + mysql。我需要一些建議,如何從mysql獲取並組織結果。只是想法會很好。 – FaStie9000 2012-08-09 13:19:48
好的,你的桌子是什麼樣的?只需要知道你有不同的列。另外,你是否只有一張桌子? – weltschmerz 2012-08-09 13:20:01