1.预定义变量
说明:php系统已经定义好变量,我们直接使用
- 超全局变量是在全部作用
- $GLOBALS
- $_SERVER
- $_GET
- $_POST
- $_FILES
- $_REQUEST
- $_SESSION
- $_ENV
- $_COOKIE
- $php_errormsg
- $HTTP_RAW_POST_DATA
- $http_response_header
- $argc
- $argv
2.超全局变量:当前页面变量是有作用域的限制
php中许多预定义变量都是超全局的,这意味着他们在一个脚本的全部作用域中都可以使用
超全局变量有:
- $GLOBALS
- $_SERVER
- $_GET
- $_POST
- $_FILES
- $_COOKIE
- $_SESSION
- $_REQUEST
- $_ENV
全局作用域:在函数外部定义的变量,就称为全局变量,全局变量不能在函数内部使用
局部作用域:在函数内部定义的变量,就称为局部变量,局部变量不能在函数外部使用
超全局作用域:没有使用限制,并且有的超全局还可以跨脚本($_POST、$_GET、$SESSION、$_COOKIE等)
$_GET
说明:就是接收表单或者超链接发送过来的数据
语法:$_GET[‘参数名称’];
案例:
新建一个login.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>网页标题</title> </head> <body> <form action='./get_user_name.php' method='get'> 用户名:<input type="text" name="username"> 密 码:<input type="password" name="password"> <input type="submit" value="提交"> </form> </body> </html>
新建一个get_user_name.php
<?php
//给用户名和密码一个初始值(以后在数据库储存的)
$user='admin';
$pass='123456';
//获取用户名和密码
$userName=$_GET['username'];
$passWord=$_GET['password'];
//判断合法性--是否为空
if($userName==''||$passWord==''){
echo'用户名或密码不能为空';
exit;
}
//判断输入的用户名和密码是否正确
if($userName==$user&&$passWord==$pass){
echo '登陆成功!';
}else{
if($userName!=$user){
echo'用户名错误';
}else{
echo'密码错误';
}
}
?>

get的另一种方式:超链接
直接在提交的超链接中加上?和参数值。如:get_user_name.php?username=admin&password=123456

$_POST
说明:接收表单用post方式传递数据的功能

$_SESSION
get和post可以接收数据,可以对数据进行判断,但是不能储存数据
session是告诉浏览器我的数据已经验证过了,登陆成功,session需要存储数据,其他页面通过判断session中的存储数据来判断是否真的登陆,session可以跨页面来使用数据
用户提交数据的表单

接收用户提交的数据

其他页面进行session验证,判断session里面有没有值

<?php
//开启session
session_start();
if(@$_SESSION['username']==''){
echo '请登陆';
exit;
}else{
echo 'session验证成功,用户名为'.$_SESSION['username'];
}
?>
吾爱乐享












评论前必须登录!
注册