如上代碼,想要在點擊button提交跳轉到updateproduct.do.php的同時,將本頁獲取的$p_id,通過url值傳到下個頁面里。可是每次點擊button後 地址欄里都只有 “ updateproduct.do.php?p_name=11&p_price=22&p_pic=33&p_da ...
1 $p_id = $_REQUEST['p_id'];
2
3 echo "<h1>您將更新商品編號為<span>$p_id</span>的商品信息 <a href='listproduct.php'>查看所有</a></h1>
4 <form action='updateproduct.do.php?p_id=$p_id' method='get'>
5 商品名稱:<input type='text' name='p_name' value='".$result_name2["name"]."'>商品名稱小於10個字<br><br>
6 商品價格:<input type='text' name='p_price' value='".$result_price2["price"]."'>價格大於0且小於99999.99(保留兩位小數)<br><br>
7 圖片:<input type='text' name='p_pic' value='".$result_pic2["pic"]."'>請輸入圖片src<br><br>
8 生產日期:<input type='text' name='p_date' value='".$result_onShelfDate2["onShelfDate"]."'>格式:yyyy-mm-dd<br><br>
9 詳細信息:<input type='text' name='p_detail' value='".$result_detail2["detail"]."'>詳細信息請保持在50字以內<br><br>
10 <button>提交</button>
11 </form>";
12 ?>
如上代碼,想要在點擊button提交跳轉到updateproduct.do.php的同時,將本頁獲取的$p_id,通過url值傳到下個頁面里。可是每次點擊button後 地址欄里都只有 “ updateproduct.do.php?p_name=11&p_price=22&p_pic=33&p_date=44&p_detail=55 ”
p_id怎麼都傳不過去。折騰了半天,其實原因很簡單,(以下為個人理解,但是問題解決了)在method=get下,form表單隻接收表單元素”name“屬性和相應的”value“。想要通過在action中自己寫?的形式傳值,method的值必須是=post,即代碼中第二行改為:
<form action='updateproduct.do.php?p_id=$p_id' method='post'>
改成這樣就可以了!
還有一種方法,必須用method=get是,那就應該加一個type="hidden"的input,即在4,5行之間加入如下代碼:
<input type='hidden' name='p_id' value='".$p_id."' >
以上很多話都不規範,可能不嚴謹,盡請指正!
END