本文主要為大家帶來一篇解決form中action屬性後面?傳遞參數 取得不到的問題。小編覺得蠻不錯的,現在就分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。
如下:
$p_id = $_REQUEST['p_id']; echo "<h1>您将更新商品编号为<span>$p_id</span>的商品信息 <a href='listproduct.php'>查看所有</a></h1> <form action='updateproduct.do.php?p_id=$p_id' method='get'> 商品名称:<input type='text' name='p_name' value='".$result_name2["name"]."'>商品名称小于10个字<br><br> 商品价格:<input type='text' name='p_price' value='".$result_price2["price"]."'>价格大于0且小于99999.99(保留两位小数)<br><br> 图片:<input type='text' name='p_pic' value='".$result_pic2["pic"]."'>请输入图片src<br><br> 生产日期:<input type='text' name='p_date' value='".$result_onShelfDate2["onShelfDate"]."'>格式:yyyy-mm-dd<br><br> 详细信息:<input type='text' name='p_detail' value='".$result_detail2["detail"]."'>详细信息请保持在50字以内<br><br> <button>提交</button> </form>"; ?>
如上程式碼,想要在點擊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'>
改成這樣就可以了!
相關推薦:
以上是form中action屬性後面傳遞參數取得不到的詳細內容。更多資訊請關注PHP中文網其他相關文章!