2012-12-26 48 views
2

我正在創建一個網站,其中包含購物車功能,並且已經遇到將HTML/Javascript傳遞給PHP的變量問題。我知道這些語言是根本不同的,希望有人能提供一些指導。我已經看到了類似主題的幾個問題,但不幸的是還沒有找到適合我的情況的解決方案。使用HTML下拉菜單中的值調用PHP函數

我在php中創建了一個產品的多維數組,並希望從下拉菜單中捕獲值以調用其中下拉列表的值與產品數組中的一行相對應的函數。我的產品列表顯示在HTML表格中。我用$ _GET和$ _POST進行了實驗,但沒有任何運氣。另外,我想避免添加一個提交按鈕,因爲print_wp_cart_button_for_product函數輸出添加到購物車按鈕。 print_wp_cart_button_for_product也在側欄上創建購物車。

<TD> 
    <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="get"> 
    <select id="productcat1" name="productcat1"> 
    <option value="$">--Please Select--</option> 
    <option value="1">Product # 1 - $1.99</option> 
    <option value="2">Product # 2 - $1.99</option> 
    <option value="3">Product # 3 - $9.99</option> 
    <option value="4">Product # 4 - $9.99</option> 
    </select> 
    </form> 
</TD> 
<TD>  
    <?php $currentrow = 0; ?> 
    <?php $currentrow = $_GET["productcat1"]; ?> 
    <?php echo print_wp_cart_button_for_product($products[$currentrow]["Product"], $products[$currentrow]["Price"]); ?> 
</TD>  
+0

如果您想響應客戶端上的選擇,您不能使用PHP,但必須添加一些Javascript/JQuery事件處理函數。 –

+0

php與瀏覽器沒有任何關係......您需要ajax爲此 –

回答

0

由於PHP是一個服務器端語言,它有沒有知道什麼是在客戶端發生的方法(即什麼是在用戶的瀏覽器,如該下拉他們選擇現場發生的事情)。您必須使用javascript/ajax,才能完全運行您的函數,或者將所選選項傳回服務器以運行PHP函數。或者,您可以通過提交表單與服務器進行通信,而不需要javascript/ajax,但是您表示不想這樣做。

祝你好運!

+0

感謝您的回覆。希望有一個我忽略的解決方案,但似乎並非如此。學習一些Ajax的時間! – panoramic

+0

@pan祝你好運!作爲新用戶,如果您覺得我的答案完整(儘管現實令人失望),如果您投了票或接受我的答案,我將不勝感激。我仍然試圖獲得基本的網站功能,所以我需要每一個我能得到的代表點! –

相關問題