基本上我正在爲我的論壇的用戶構建一個汽車獎勵系統。 它的作用是檢查它們是否符合該獎項IE帖子,因果報應等.... 的準則允許成員自主的問題,如果他們滿足此條件..如何檢查一個查詢是否存在多個值
的一個問題,我面對的是我喜歡查詢MySQL數據庫一次,並對每個獎項進行多次檢查,看看他們是否已經擁有它。 如果不允許他們通過單擊按鈕自行頒發獎勵。
這裏是我迄今爲止
//Query Member Awards DB to check if we already have this Award
$query2 = $smcFunc['db_query']('', '
SELECT id_award, id_member
FROM {db_prefix}awards_members
WHERE id_member = {int:id_prof}',
array(
'id_prof' => $user_info['id'],
)
);
$info2 = $smcFunc['db_fetch_assoc']($query2);
echo $info2['id_award'];
if ($info2['id_award'] == '27')
echo 'exists';
我的表看起來像這樣
uniq_id id_award id_member date_received favorite
44 29 1 2011-11-02 1
31 21 1 2011-11-02 0
41 32 1 2011-11-02 0
43 27 1 2011-11-02 0
34 18 1 2011-11-02 0
35 38 1 2011-11-02 1
39 31 1 2011-11-02 0
40 30 1 2011-11-02 1
現在基本上下面我將有一堆都具有不同的ID的 獎我想是─能夠說如果存在不顯示一個按鈕.. 現在這將是很好,如果只有一個獎項檢查,但我需要檢查幾個獎項。
我不想使用where子句進行多個查詢,看看這個成員是否已經有了這個獎項。
是否有這樣做,所以我只需要一個查詢,並可以檢查多個獎項的一個簡單的方法..
if ($info2['id_award'] == '1')
echo 'exists';
if ($info2['id_award'] == '2')
echo 'exists';
等等
我在待辦事項的最佳方式很疑惑。 任何幫助將是驚人的。
編輯:
呀基本上它會看起來像這樣..我將使用AJAX提交數據..
if ($info2['id_award'] != '27') && ($info['karma_good'] >= '100') {
echo '
<form id="karma_god" method="post">
<input type="hidden" id="recipient_to" name="recipient_to" value="' . $info['id_member'] . '" size="32" />
<input type="hidden" id="award" name="award" value="28" size="32" />
<input type="hidden" id="year" name="year" value="' . date('Y') . '" size="32" />
<input type="hidden" id="month" name="month" value="' . date('n') . '" size="32" />
<input type="hidden" id="day" name="day" value="' . date('d') . '" size="32" />
<span>You have above 100 Karma! A New Award Awaits. </span><button class="button"> <img src="http://www.uniquez-home.com/awards/28.gif" alt="" style="vertical-align:bottom;"> Karma God </button>
</form>';
而且顯然是多了一些獎勵2這一項下..
這似乎是最好的解決方案也是最快的。 你可以給我一個如何將它們全部放入數組的例子嗎? –
@ oOo - STAR - oOo我已經給了你一個。如果你有一些用於運行mysql查詢的自定義函數/包裝器,你應該共享它,以便我可以根據這個包裝器調整代碼。 – Shef
這將工作..非常感謝你..我將要測試這種方法和in子句方法..我今天學到了新東西XD –