获取表单数据的两种方法(post,get,request)
2016-10-31 17:37
549 查看
$_REQUEST 变量 PHP 的 $_REQUEST 变量包含了 $_GET, $_POST 以及 $_COOKIE 的内容。 PHP 的 $_REQUEST 变量可用来取得通过 GET 和 POST 方法发送的表单数据的结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>An HTML Form that Calls Itself</title> </head> <body> <div> <?php header("Content-Type: text/html; charset=utf-8"); if ( ! empty( $_POST['guess'] ) ) { print "last guess: ".$_POST['guess']; } ?> <form method="post" action="<?php print $_SERVER['PHP_SELF']?>"> <p>Type your guess here: <input type="text" name="guess" /> </p> <input type="submit" name="Submit" value="提交"> </form> </div> </body> </html>
<?php $self = $_SERVER['PHP_SELF']; $username = $_POST['username']; $useraddr = $_POST['useraddr']; $comments = $_POST['comments']; $sent = $_POST['sent']; $form ='<form action="$self" method="post">'; $form.='Name:<input type="text" name="username"'; $form.=' size="30" value="$username" >'; $form.='Email:<input type="text" name="useraddr"'; $form.=' size="30" value="$useraddr">'; $form.='Comments:<textarea name="comments" >'; $form.='$comments</textarea><br/>'; $form.='<input type="submit" name="sent" value="Send Form">'; $form.='</form>'; if( $sent ){ $valid=true; if( !$username ){ $errmsg.="Enter your name...<br />"; $valid = false; } if( !$useraddr ){ $errmsg .="Enter your email address...<br />"; $valid = false; } if( !$comments ){ $errmsg.="Enter your comments...<br />"; $valid = false; } $useraddr = trim($useraddr); $_name = "/^[-!#$%&'*+./0-9=?A-Z^_'{|}~]+"; $_host = "([-0-9A-Z]+.)+"; $_tlds = "([0-9A-Z]){2,4}$/i"; if( !preg_match( $_name."@".$_host .$_tlds,$useraddr ) ){ $errmsg.="Email address has incorrect format!<br />"; $valid=false; } } if( $valid != true ){ echo( $errmsg.$form ); } else { $to = "php@h.com"; $re = "Feedback from $username"; $msg = $comments; $headers = "MIME-Version: 1.0rn"; $headers .= "Content-type: text/html;"; $headers .= 'charset="iso-8859-1"rn'; $headers .= "From: $useraddr rn"; if(mail($to,$re,$msg, $headers)){ echo("Your comments have been sent - thanks $username"); } } ?>
$_POST 变量 $_POST 变量是一个数组,内容是由 HTTP POST 方法发送的变量名称和值。 $_POST 变量用于收集来自 method="post" 的表单中的值。从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。
后面是追记
PHP中获取表单数据的三种方法,及其差别之处如下所示 表单部分代码: <form name="form1" method="post" action=""> <input type="text" name="username"> <input type="submit" name="Submit" value="提交"> </form> 获取表单: <?php echo ($HTTP_POST_VARS["username"]); echo ($_REQUEST["username"]); echo ($username); ?> 方法一是4.0以下版本常用的方法,而不管register_globals如何设置; 方法二是4.2以上版本常用的方法,而不管register_globals如何设置; 方法三是在php.ini设置register_globals = On 的时候才适用。 补: $_REQUEST中间的内容实际上还是来源于$_GET $_POST $_COOKIE,缺点是无法判断变量到底来自于get post 还是cookie,对要求比较严格的场合不适用。
相关文章推荐
- 两种HTTP方法服务器传送表单数据:GET和POST的区别
- request请求获取参数的实现方法(post和get两种方式)
- jsp数据库基础之---使用post和get方法获取表单数据
- 表单form的提交有两种方式,一种是get的方法,一种是post 的方法
- (转)servlet/jsp中得到表单数据的3种方法request.getParameter()、request.getInputStream()和request.getReader()
- 在HTML中用js获取通过GET、POST方法(就是在网址后加?a=b&c=d之类)传过来的表单值
- Jquery中ajax提交表单几种方法(get、post两种方法)
- jQuery的ajax()检验用户名;通过jQuery的load()/get()/post()方法实现;使用XMLHTTPRequest对象来进行AJAX的异步数据交互
- asp.net获取Post和Get数据的方法
- 模拟表单发送POST,GET请求获取数据
- asp.net获取Post和Get数据的方法(Stream)
- $_request与$_post、$_get用于接受表单数据,区别
- servlet/jsp中得到表单数据的3种方法request.getParameter()、request.getInputStream()和request.getReader()
- Android--向服务器提交数据的两种方法Post和Get
- struts2 中使用request.getInputStream() 获取POST数据
- html 表单提交的两种方法的区别 post get
- html 表单提交的两种方法的区别 post get
- 使用request.getInputStream() 获取POST数据
- php中用于接受表单数据的$_request与$_post、$_get
- java Http消息传递之POST和GET两种方法--通过实用工具类来获取服务器资源