首页 >后端开发 >php教程 >form中action属性后面传递参数获取不到

form中action属性后面传递参数获取不到

小云云
小云云原创
2018-02-06 09:32:431483浏览

本文主要为大家带来一篇解决form中action属性后面?传递参数 获取不到的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。

如下所示:


$p_id = $_REQUEST['p_id'];

echo "<h1>您将更新商品编号为<span>$p_id</span>的商品信息 <a href=&#39;listproduct.php&#39;>查看所有</a></h1>
<form action=&#39;updateproduct.do.php?p_id=$p_id&#39; method=&#39;get&#39;> 
 商品名称:<input type=&#39;text&#39; name=&#39;p_name&#39; value=&#39;".$result_name2["name"]."&#39;>商品名称小于10个字<br><br>
 商品价格:<input type=&#39;text&#39; name=&#39;p_price&#39; value=&#39;".$result_price2["price"]."&#39;>价格大于0且小于99999.99(保留两位小数)<br><br>
 图片:<input type=&#39;text&#39; name=&#39;p_pic&#39; value=&#39;".$result_pic2["pic"]."&#39;>请输入图片src<br><br>
 生产日期:<input type=&#39;text&#39; name=&#39;p_date&#39; value=&#39;".$result_onShelfDate2["onShelfDate"]."&#39;>格式:yyyy-mm-dd<br><br>
 详细信息:<input type=&#39;text&#39; name=&#39;p_detail&#39; value=&#39;".$result_detail2["detail"]."&#39;>详细信息请保持在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=&#39;updateproduct.do.php?p_id=$p_id&#39; method=&#39;post&#39;>

改成这样就可以了!

相关推荐:

js函数的按值传递参数

php引用定义和引用传递参数实例用法详解

php函数基本语法与传递参数的用法实例详解

以上是form中action属性后面传递参数获取不到的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn