PHP 表单提交给自己


Posted in PHP onJuly 24, 2008

在大部分情况下我们指定另外一个来处理表单内容的URL地址给Action属性,但也有部分情况是需要将表单数据提交给自己的。这时候我们应该如何指定Action属性值呢?
<?php
if (isset($_POST['action']) && $_POST['action'] == 'submitted') {
    print '<pre>';

    print_r($_POST);
    print '<a href="'. $_SERVER['PHP_SELF'] .'">Please try again</a>';

    print '</pre>';
} else {
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
    Name:  <input type="text" name="personal[name]"><br>
    Email: <input type="text" name="personal[email]"><br>
    Beer: <br>
    <select multiple name="beer[]">
        <option value="warthog">Warthog
        <option value="guinness">Guinness
    </select><br>
    <input type="hidden" name="action" value="submitted">
    <input type="submit" name="submit" value="submit me!">
</form>
<?php
}
?> 
         上面的代码就实现了将表单提交给自己(注:在PHP4.1.0之前的版本请使用$_HTTP_POST_VARS替代下面代码中的$_Post变量)。这里使用了服务器变量$_Server获取当前页面的URL地址,并将其赋给表单的Action属性。这里使用了一个小小的技巧用以服务器在收到该URL请求是确定是POST请求还是GET请求。就是在表单中增加一个隐藏的变量,在处理请求时我们通过isset函数检测是否设置了这个隐藏变量,由此判断出该请求使用了POST还是GET方法。

PHP 相关文章推荐
一个简单的自动发送邮件系统(二)
Oct 09 PHP
实用函数8
Nov 08 PHP
PHP 遍历XP文件夹下所有文件
Nov 27 PHP
php压缩HTML函数轻松实现压缩html/js/Css及注意事项
Jan 27 PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 PHP
8个PHP数组面试题
Jun 23 PHP
又拍云异步上传实例教程详解
Apr 19 PHP
PHP简单实现DES加密解密的方法
Jul 12 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
May 21 PHP
PHP7.0连接DB操作实例分析【基于mysqli】
Sep 26 PHP
php给数组赋值的实例方法
Sep 26 PHP
php+iframe 实现上传文件功能示例
Mar 04 PHP
PHP 得到根目录的 __FILE__ 常量
Jul 23 #PHP
jq的get传参数在utf-8中乱码问题的解决php版
Jul 23 #PHP
使用PHP socke 向指定页面提交数据
Jul 23 #PHP
php sprintf()函数让你的sql操作更安全
Jul 23 #PHP
PHP版自动生成文章摘要
Jul 23 #PHP
php array_merge下进行数组合并的代码
Jul 22 #PHP
用php过滤危险html代码的函数
Jul 22 #PHP
You might like
解析php中获取url与物理路径的总结
2013/06/21 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
使用 laravel sms 构建短信验证码发送校验功能
2017/11/06 PHP
js导入导出excel(实例代码)
2013/11/25 Javascript
jQuery中delegate与on的用法与区别示例介绍
2013/12/20 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
Firefox中使用outerHTML的2种解决方法
2014/06/07 Javascript
JS和css实现检测移动设备方向的变化并判断横竖屏幕
2015/05/25 Javascript
详解JavaScript逻辑And运算符
2015/12/04 Javascript
JavaScript判断用户名和密码不能为空的实现代码
2016/05/16 Javascript
值得收藏的八个常用的js正则表达式
2018/10/19 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
微信小程序自定义yPicker组件实现省市区三级联动功能
2020/10/29 Javascript
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
2020/12/14 NodeJs
详解实现vue的数据响应式原理
2021/01/20 Vue.js
[38:30]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场2
2014/05/24 DOTA
[02:44]重置世界,颠覆未来——DOTA2 7.23版本震撼上线
2019/12/01 DOTA
Python判断是否json是否包含一个key的方法
2018/12/31 Python
python 内置函数汇总详解
2019/09/16 Python
Python Opencv提取图片中某种颜色组成的图形的方法
2019/09/19 Python
Python selenium模拟手动操作实现无人值守刷积分功能
2020/05/13 Python
python使用matplotlib绘制折线图的示例代码
2020/09/22 Python
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
Nike荷兰官方网站:Nike.com (NL)
2018/04/19 全球购物
vue+django实现下载文件的示例
2021/03/24 Vue.js
大三自我鉴定范文
2013/10/05 职场文书
简历中个人求职的自我评价模板
2013/11/29 职场文书
顶撞领导检讨书
2014/01/29 职场文书
知名企业招聘广告词大全
2014/03/18 职场文书
小学中等生评语
2014/12/29 职场文书
职代会闭幕词
2015/01/28 职场文书
2016大学自主招生推荐信范文
2015/03/23 职场文书
2015年管理人员工作总结
2015/05/13 职场文书
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android
MySQL如何解决幻读问题
2021/08/07 MySQL