讓我用一個例子來說明這一點。php&mySQL:選擇多本書並在下一屏幕中顯示其信息
考慮有10本書(可能有更多,甚至在一個屏幕上可能有100多本書)。顧客可以訂購任意數量的書籍。在方案中,每本書都是連續出現的,而書中的詳細信息則以列的形式排列。現在10本書(以及它們的細節)以10行顯示。
BOOK_NAME DESCRIPTION PRICE B1 Book 1 10 Checkbox B2 Book 2 20 Checkbox B3 Book 3 30 Checkbox B4 Book 4 40 Checkbox ... B10 Book 10 100 Checkbox ------------------------------------------ Add to Cart button
現在,用戶可以檢查以上任意數量的書籍。點擊「添加到購物車」按鈕後,我希望下一個屏幕以上述格式顯示所選圖書的詳細信息。因此,舉例來說,如果用戶選擇:B1,B3和B10和點擊「加入購物車」按鈕,在接下來的畫面,我想如下表現出來:
BOOK_NAME DESCRIPTION PRICE IN_STOCK B1 Book 1 10 2 B3 Book 3 30 5 B10 Book 10 100 1
我已經添加了'有貨'欄。在這一欄中,顯示了每本書(庫存)的編號。
我在執行上述操作時遇到了問題,所以如果有人能幫助我解決這個問題,那麼這個問題真的很有幫助。我已經指出了我遇到最麻煩的部分,放置?????那裏。我試圖以最有效的方式並在單個查詢中執行此操作,而不必一遍又一遍地執行查詢(在循環中)。 (請注意,若50本書籍進行了檢查,則需要顯示50行的書與他們相關的信息,以便希望這是有道理的。)
我當前的查詢:
SELECT
(SELECT COUNT(*) FROM books_stock WHERE books_stock.book_id ?????) AS books_in_stock,
books.book_id, books.description, books.book_price, books.book_name
FROM books
INNER JOIN books_stock ON books.book_id = books_stock.book_id
WHERE book_id ?????
我相信,一旦查詢完成,我需要爲了能夠顯示的結果做一個
while($rows = mysql_fetch_array($result))
。我對嗎?
謝謝。
太棒了!謝謝。 – Devner 2010-02-19 11:53:19