PHP 的基础语法 get 请求参数的获取| 学习笔记

简介: 快速学习PHP 的基础语法 get 请求参数的获取。

开发者学堂课程【Ajax 前端开发入门与实战PHP 的基础语法 get 请求参数的获取】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8520


PHP 的基础语法 get请求参数的获取


讲解非常重要的知识点:预定义变量

讲解预定义变量之前,要了解关于请求类型以及请求参数,那么可以把关注点回到之前的动态网站 dweb/,在 dewb/ 中每一个水果都可以点击,点击后会跳转到水果的详情界面,不管点击什么水果会发现访问的是 detail1.php 界面。

对于同一个界面来说,怎么能根据点击的不同而展示出不同的内容呢?

在 detail1.php 后有一个 ?

flag= 一个值,代表的就是请求参数,也就是每一个水果的点击确实访问的只有一个界面就是 detail1.php ,但是通过 ?

flag 值的差异会造成 detail1.php 根据参数的不同而加载不同的数据,而这就是动态网站上的本质。

动态网站的本质就是只有一个界面,根据参数的不同加载不同的数据,比如将 ?flag= 的值变为 apple,就会展示出苹果相关的信息,这里 ?flag=apple 就是请求参数,非常重要。

请求参数是通过 ?的方式和 url 进行连接,这种方式认为是 get 请求,?flag=apple 代表的是 get 请求参数。

除了get请求,还有一个 post 请求。

post 请求和 get 请求最大的区别在于:

Post 请求也是有参数的,不过它的参数不是跟在 url 的后边,而是跟在当中,也就是不能在地址栏当中看到参数,只能在请求体里看到参数。

请求可以携带一些参数,动态网站根据所携带的参数的不同,加载不同的数据。

举例:

PHP 文件下创建 login 文件,以登陆的界面进行 get 请求和 post 请求的演示:

在 login 文件中创建新的file 保存文件名是 login.html,再创建一个 file 文件名是check.php。check.php 是用来做用户名和密码的校验。

当用户输入正确的用户名和正确的密码后将会有一种显示,当用户输入错误的用户名密码后将会有错误的提示。

所以 check.php 要做的事情是获取到用户所输入的用户名和密码进行校验的工作。

首先在 check.php 中将相关代码写出来:

<?php

echo "checkUsername";

?>

在 login.html 中:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>登录界面</title>

</head>

<body>

<h1>登录界面</h1>

<form action="check.php" method="get">  //在form表单中进行请求,action 就是点击时请求的后端界面,method 中可以是get请求,也可以是 post请求。

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

密码:<input type="password" name="password"><br>

<input type="submit" value="提交">    //提交按钮

</form>

</body>

</html>

进行测试:

在 index of / 中 点击 php 里面有 login的文件夹点击 login.html 显示出:

登陆界面

用户名:image.png

密码:image.png

这时输入用过户名 admin和密码123点击提交后会请求到 check.php 将用户名和密码带过来

这时可以看到 check.php 已经输出了内容。

现在的目的是当请求到 check.php 时将参数携带过来之后,让这个界面检查一下这个用户名和密码是不是正确的。

可以看到 Get 请求参数确确实实是跟在 url 后面的,以 ? 的方式进行连接,如果有多个参数的话,参数与参数之间通过 & 进行连接,这是 get 请求。

将 admin 和123 作校验,方法是可以查询数据库,也可以简单做一些条件判断,首先需要把 admin和123获取出来。

怎么进行获取就是本节内容:预定义变量:

$ GET[ ]

$ POST[ ]

由于现在是 get请求,通过 get 请求请求到 cheak.php 界面,那么对于这个界面来说想要获取到携带过来的参数,在 cheak.php 就需要写入:

$username = $_GET["username"];

$password = $_GET["password" ];

//按道理来说,这里面的代码应该要查询数据库

if($username == "admin”8.8 $password - "123"){

echo "Login Success";

}else {

echo "Login Falied";

}

?>

回到界面中进行测试:

登陆界面

用户名:image.png

密码:image.png

输入 admin 和123点击提交之后会显示:

Login Succsee 

根据用户传递过来的 username password 做条件判断后,进行到下一个分值中,如果将密码输错会出现:

Login Falied 

提交的同样是 cheak.php 界面,这个界面会通过用户所传递过来的参数,根据参数的不同而进行不同的逻辑条件判断。

Get 请求参数就是跟在 url 的后边,通过 ? 进行连接,如果有多个参数用 & 进行连接。 

在 php 界面中想要获取到 get 请求过来的参数,通过$ GET [ ] 就可以进行获取,的到参数后在做一个逻辑的判断。

预定义变量

A、请求类型

请求有时候是需要携带参数的,用来标识特定的要求,根据参数携带位置的不同可以简单的把请求分为 Get 请求和 Post 请求 v

a)Get 请求:参数在 uRL 后面,多个参数用&进行连接

b)Post 请求:参数在请求体中。

B、获取请求参数的值

$ GET[ ]

$ POST[ ]

相关文章
|
3月前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
3月前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
3月前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
3月前
|
前端开发 PHP
php学习笔记-php文件表单上传-day06
本文介绍了PHP文件上传处理流程、预定义变量`$_FILES`的使用、文件上传状态代码以及文件上传实现函数。同时,通过一个文件上传的小例子,演示了文件上传表单的创建、文件上传表单处理的PHP页面编写以及运行测试输出。
php学习笔记-php文件表单上传-day06
|
3月前
|
JavaScript 程序员 PHP
php学习笔记-php自定义函数-day05
本文介绍了PHP自定义函数的创建、调用、参数赋值以及作用域和生命周期,还探讨了`global`和`static`关键字的使用,以及`return`、`exit`和`die`的不同用法。
|
1月前
|
前端开发 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
43 0
|
25天前
|
存储 关系型数据库 MySQL
PHP与MySQL动态网站开发:从基础到实践####
本文将深入探讨PHP与MySQL的结合使用,展示如何构建一个动态网站。通过一系列实例和代码片段,我们将逐步了解数据库连接、数据操作、用户输入处理及安全防护等关键技术点。无论您是初学者还是有经验的开发者,都能从中获益匪浅。 ####
|
28天前
|
安全 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
——深入探索LAMP栈下的高效数据交互与处理技巧 ####
|
26天前
|
关系型数据库 MySQL PHP
php实现一个简单的MySQL分页
通过本文的详细步骤和代码示例,我们实现了一个简单的PHP MySQL分页功能。主要步骤包括计算总记录数、设置分页参数、查询当前页的数据以及生成分页链接。这种分页方式适用于大多数Web应用,能够有效提升用户体验和页面响应速度。
26 4
|
1月前
|
关系型数据库 MySQL PHP
PHP与MySQL动态网站开发实战指南####
深入探索PHP与MySQL的协同工作机制,本文旨在通过一系列实战案例,揭示构建高效、稳定且用户友好的动态网站的秘诀。从环境搭建到数据交互,再到最佳实践分享,本文为开发者提供了一条清晰的学习路径,助力其在LAMP(Linux, Apache, MySQL, PHP/Perl/Python)栈上实现技术飞跃。 ####