_POST来接收表单数据的实例_php实例_脚本之家,php开发之变量的类型判断

利用$_POST超级全局变量接收表单的数据,然后利用echo输出到页面。

1、Php的开头和结尾

php变量的类型判断:

1.var_dump()

描述:打印变量的相关信息(包括变量的类型和值)

语法:void var_dump(mixed $expression[,mixed $…])

参数说明:$expression是指要打印变量的名称,可以是多个变量,多个变量之间用逗号隔开。

返回值:无。

如:$name=”abc”;

$age=24;

$isMarried=true;

$edu=null;

var_dump($name,$age,$isMarried,$edu);—->输出结果为:string(3)
“abc” int(24) bool(true) null

2.is_()*

is_bool():判断变量是不是布尔型;

is_int():判断变量是不是整型

is_float();判断变量是不是浮点型

is_string():判断变量是不是字符串

is_array():判断变量是不是数组

is_object();判断变量是不是对象

is_null():判断变量是否为空型.

……………………………………………

如:$name=”abc”;

$age=24;

if(is_int($age)){
echo “{$name}的年龄是$age”;

}————————->输出结果为:abc的年龄是24

3.isset()

描述:检查变量是否设置或者是否存在

语法:bool isset(mixed $var[,mixed $…])

返回值:如果变量存在,且不等于null,则返回true,否则返回false。

如:$ame=”abc”;

$edu;//变量定义了,但未赋值,该值为null 

//判断毕业院校是否存在

if(isset($edu)){

echo “$name 的毕业院校是:$edu”;

}else{

echo “$name 的毕业院校是:未填写”;

}———————->输出结果为:abc的毕业院校是:未填写

如:<form name=”forml” method=”post” action=””>

用户名:<input type=”text” name=”username”>

密码:<input type=”password” name=”userpwd”>

<input type=”hidden” name=”ac”
value=”login”>//隐藏域:主要用于向服务器端传值

<input type=”submit” value=”提交表单”>

</form>

4.empty()

描述:检查一个变量是否为空

语法:bool empty(mixed $var)

说明:换句话说,“”,“0”,0,null,false,array(),var$var,以及没有任何属性的对象都将被认为是空的,如果var为空,则返回true。

如:$name=”mj”;

$school;

if(empty($school)){
echo ”$name 的毕业院校:未填写”;

}else{
echo ”$name 的毕业院校:$school”;

}—————————>输出结果是:mj 的毕业院校:未填写

下面是代码:

PHP 脚本以 <?php 开头,以 ?> 结尾:

php如何获取表单提交数据

1.超全局数组 变量:$_GET[]

描述:获取表单method=“get” 提交的数据

举例:<?php

var_dump($_GET);//打印全局数组的信息

if(isset($_GET[“ac”] && $_GET[“ac”]==”login”){

$username=$_GET[“username”];//获取表单元素的值

$userpwd=$_GET[“userpwd”];

}//判断表单是否提交
?>

2.超全局数组变量:$ _POST[]

描述:获取表单method=“post” 提交的数据

举例:

var_dump($_POST);//打印全局数组的信息

$username=$_POST[“username”];//获取表单元素的值

$userpwd=$_POST[“userpwd”];

?>

利用超级全局变量$_POST接收表单

2、PHP中输出:(echo和print,在使用时带不带括号均可,如echo(“Hello Word”))

输出内容使用post方式提交数据,然后用$_POST[‘fname’];接收数据赋值到$name的全局变量中,

echo和print区别:

然后用echo输出$name;变量得到最终的结果,就是表单内的内容。……………….

echo能输出1个以上的字符串

以上这篇PHP利用超级全局变量$_POST来接收表单数据的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

Print只能输出一个字符串

用echo在页面上输出文字  如 echo “Hello World!” 

 var_dump()能输出数据类型和值

3、注释:

<!DOCTYPE html>

<html>

<body>

<?php

// 这是单行注释

# 这也是单行注释

/*

这是多行注释块

它横跨了

多行

*/

?>

</body>

</html>

4、在 PHP 中,所有用户定义的函数、类和关键词(例如
if、else、echo 等等)都对大小写不敏感。

5、在 PHP 中,所有变量都对大小写敏感。

6、PHP 变量规则:

  • 变量以 $ 符号开头,其后是变量的名称
  • 变量名称必须以字母或下划线开头
  • 变量名称不能以数字开头
  • 变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)
  • 变量名称对大小写敏感($y 与 $Y 是两个不同的变量)

 $X,$Y表示变量X和变量Y

7、PHP 有三种不同的变量作用域:

  • local(局部即js中的私有作用域)
  • global(全局即js中的全局作用域)
  • static(静态)

正常情况下,私有变量只能在私有作用域中使用,全局变量只能在全局作用域下使用,函数内容不能直接使用全局变量

8、PHP global 关键词(global
关键词用于访问函数内的全局变量)

即私有作用域中,在变量前加global关键字即可使用全局变量,如global $x,$y;表示全局变量x和y,这时在私有作用域下就可使用全局变量x和y的值

9、PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量。(index表示变量名)

如:$GLOBALS[‘y’]=$GLOBALS[‘x’]+$GLOBALS[‘y’];(即全局变量y=全局变量x+全局变量y)

10、PHP中当函数执行完成后,会删除所有变量。如果有时不想删除某个变量,则可在创建变量时使用static关键字,如:static $x=0;

11、计算字符串的长度  strlen(str)  如字符串中包含空格,则空格也算字符

12、检索字符串中某个字符的索引位置,用strpos
如:strpos(“xia tian lai
le”,”tian”)

13、定义常量用define(a,b,c)

define中有三个参数:a表示常量名称

 b表示常量值

 c表示是否对大小写敏感,默认是false,true表示对大小写不敏感

这里所说的对大小写敏感是针对常量名称而言,如常量名称是NAME,当c的值为false的时候,输出name,也不会打印出常量值,如c的值为true,则可以打印出常量值。

14、建数组

a) $ary=ary(“str1”,”str2”,”str3”);

b) $ary=ary(“a”=>”red”,”b”=>”green”);表示a的值是red b的值是green

输出数组的值用var_dump($ary);

根据索引输出数组中的值,如
$ary[0],$ary[1],$ary[2]

关联数组:

$age=array(“Peter”=>”35″,”Ben”=>”37″,”Joe”=>”43”);

echo “$age[Joe]” 输出43

15、count()

输出数组中元素的个数,如count($ary)

16、do  while循环(do while循环至少会执行一次,首先是执行do里边的内容,然后当while中的条件成立时会再次执行do里的内容)

do{

 

}while(){

 

}

17、foreach循环

$ary=array(“a”,”b”,”c”);

foreach($ary as $value){
echo “$value<br>”

}

 

$ary1=array("a"=>"red","b"=>"blue","c"=>"green","d"=>"yellow");
foreach ($ary1 as $x=>$x_value){
        echo "value=$x_value<br>";
}

 

18、form标签中的action用于存放接受表单数据的路径

如指定文件本身来处理表单数据,则action的路径为

action=”<?php echo
$_SERVER[‘PHP_SELF’];?>”

19、$_REQUEST 用于收集 HTML 表单提交的数据。

如:$name =
$_REQUEST[‘fname’]; 即获取name值为fname的表单值

echo $name;

20、$_POST用于method为post方式提交的表单数据

如:$name = $_POST[‘fname’];
即获取name值为fname的表单值

21、$_GET用于method为get方式提交的表单数据

如:$name = $_GET[‘fname’];
即获取name值为fname的表单值

22、格式化表单内容

$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {

  $name = test_input($_POST["name"]);

  $email = test_input($_POST["email"]);

  $website = test_input($_POST["website"]);

  $comment = test_input($_POST["comment"]);

  $gender = test_input($_POST["gender"]);

}

function test_input($data) {

  $data = trim($data);//去掉多余的字符(空格、制表符、换行符等)

  $data = stripslashes($data);//去掉用户输入内容中的反斜杠

  $data = htmlspecialchars($data);//把特殊字符转换为html实体

  return $data;

}

 

23、表单验证

24、preg_match() 函数检索字符串的模式,如果模式存在则返回
true,否则返回 false。

<?php
$name=$email=$nameError=$emailError="";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if(empty($_POST["name"])){
        $nameError="name是必填的";
    }else{
        $name=test_input($_POST["name"]);

        if(!preg_match("/^[a-zA-z ]*$/",$name)){
        $nameError="name只能是字母或空格";
}


    }
    if(empty($_POST["email"])){
        $emailError="email为必填";
    }else{
        $email=test_input($_POST["email"]);

        if (!preg_match("/([w-]+@[w-]+.[w-]+)/",$email)) {

// if (!preg_match("/b(?:(?:https?|ftp)://|www.)[-a-z0-9+&@#/%?=~_|!:,.;]*[-a-z0-9+&@#/%

    =~_|]/i",$website))检测url
          $emailError = "无效的 email 格式!";
       }


    }
}
function test_input($data){
    $data=trim($data);
    $data=stripslashes($data);
    $data=htmlspecialchars($data);
    return $data;
}
?>
<form method="post" class="form1" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
    Name: <input type="text" name="name"><?php echo $nameError;?><br>
    E-mail: <input type="text" name="email"><?php echo $emailError;?><br>
    <div class="btn" style="width: 100px;height:30px;line-height: 28px;border-radius:5px;border:1px solid #ccc;text-align: center;">提交</div>
    <input type="submit">
</form>

 

25、数据库连接

Mysql_connect(servername,username,password)

三个参数均是可选的,servername是服务器名称,默认为localhost:3306
如 :$con=mysql_connect(“localhost”,”dong”,”123abc”);

If(!$con){

die(“counld not connect ” .mysql_error());

}

26、脚本一结束就会关闭连接,如需提前关闭数据库连接,用mysql_close()

    如:mysql_close($con)

27、echo $m1 = memory_get_usage();
//memory_get_usage()获取当前PHP消耗的内存