解决form中action属性后面?传递参数 获取不到的问题

yipeiwu_com7年前PHP代码库

如下所示:

$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属性后面?传递参数 获取不到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

阿里云的WindowsServer2016上部署php+apache

阿里云的WindowsServer2016上部署php+apache

一、说明:项目需要在阿里云的WindowsServer2016上部署web环境,已经安装了Mysql,所以就不用一键安装(如phpstudy或者wamp来安装web环境了),就独立安装了...

php生成图片验证码的方法

php生成图片验证码的方法

本文为大家分享了php生成图片验证码的方法,供大家参考,具体内容如下 首先从指定字符集合中随机抽取固定数目的字符,以一种不规则的方法画在画布上,再适当添加一些干扰点和干扰元素,最后将图片...

浅析php与数据库代码开发规范

1、PHP中对各类变量内容的命名规范  (1)目录命名、文件命名、局部变量命名: 使用英文名词、动词,以下划线作为单词的分隔,所有字母均使用小写 目录:upload、templ...

PHP随机生成信用卡卡号的方法

本文实例讲述了PHP随机生成信用卡卡号的方法。分享给大家供大家参考。具体分析如下: 这段PHP代码根据信用卡卡号产生规则随机生成信用卡卡号,是可以通过验证的,仅供学习参考,请不要用于非法...

php自动给文章加关键词链接的函数代码

复制代码 代码如下: <?php $link = array( '百度,http://www.baidu.com/', '服务器软件,http://s.jb51.net/', '【...