萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php 獲取表單數據的實現方法

php 獲取表單數據的實現方法

這是一篇基礎的php教程入門教程,我們要告訴你如何利用php的相關函數來獲取表單數據,在php提供了post,get,request三種方法來獲取數據,我們最常用的就是$_POST,$_GET方法了,看
$_REQUEST 變量
PHP 的 $_REQUEST 變量包含了 $_GET, $_POST 以及 $_COOKIE 的內容。

PHP 的 $_REQUEST 變量可用來取得通過 GET 和 POST 方法發送的表單數據的結果。


實例

 

<html>
<head>
<title>An HTML Form that Calls Itself</title>
</head>
<body>
<div>
<?php
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>
</form>
</div>
</body>
</html>

由於表的提供大量數據時我們盡量用post來獲取,更復雜的實例二
 
實例二

<?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 = "[email protected]";

  $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 變量
$_POST 變量是一個數組,內容是由 HTTP POST 方法發送的變量名稱和值。

$_POST 變量用於收集來自 method="post" 的表單中的值。從帶有 POST 方法的表單發送的信息,對任何人都是不可見的(不會顯示在浏覽器的地址欄),並且對發送信息的量也沒有限制。

copyright © 萬盛學電腦網 all rights reserved