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[ ]

相关文章
|
7天前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
7天前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
7天前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
7天前
|
前端开发 PHP
php学习笔记-php文件表单上传-day06
本文介绍了PHP文件上传处理流程、预定义变量`$_FILES`的使用、文件上传状态代码以及文件上传实现函数。同时,通过一个文件上传的小例子,演示了文件上传表单的创建、文件上传表单处理的PHP页面编写以及运行测试输出。
php学习笔记-php文件表单上传-day06
|
7天前
|
JavaScript 程序员 PHP
php学习笔记-php自定义函数-day05
本文介绍了PHP自定义函数的创建、调用、参数赋值以及作用域和生命周期,还探讨了`global`和`static`关键字的使用,以及`return`、`exit`和`die`的不同用法。
|
13天前
|
安全 关系型数据库 MySQL
PHP与MySQL交互:从入门到实践
【9月更文挑战第20天】在数字时代的浪潮中,掌握PHP与MySQL的互动成为了开发动态网站和应用程序的关键。本文将通过简明的语言和实例,引导你理解PHP如何与MySQL数据库进行对话,开启你的编程之旅。我们将从连接数据库开始,逐步深入到执行查询、处理结果,以及应对常见的挑战。无论你是初学者还是希望提升技能的开发者,这篇文章都将为你提供实用的知识和技巧。让我们一起探索PHP与MySQL交互的世界,解锁数据的力量!
|
24天前
|
NoSQL 关系型数据库 MySQL
不是 PHP 不行了,而是 MySQL 数据库扛不住啊
【9月更文挑战第8天】这段内容讨论了MySQL在某些场景下面临的挑战及其原因,并指出这些问题不能完全归咎于MySQL本身。高并发读写压力、数据量增长以及复杂查询和事务处理都可能导致性能瓶颈。然而,应用程序设计不合理、系统架构不佳以及其他数据库选择和优化策略不足也是重要因素。综合考虑这些方面才能有效解决性能问题,而MySQL通过不断改进和优化,仍然是许多应用场景中的可靠选择。
|
2月前
|
存储 SQL 关系型数据库
PHP与MySQL交互的奥秘
【8月更文挑战第29天】在编程的世界里,PHP和MySQL就像是一对默契的舞伴,共同演绎着数据的交响曲。本文将带你探索它们之间的互动,从连接数据库到执行查询,再到处理结果,每一步都充满了节奏与和谐。我们将一起走进这段代码的旅程,感受数据流动的魅力。
|
2月前
|
SQL 关系型数据库 MySQL
PHP与MySQL交互之基础教程
【8月更文挑战第31天】 在数字世界中,数据是推动一切的核心力量。本文将引导你探索PHP与MySQL的协同工作,通过实际代码示例,展示如何建立连接、执行查询以及处理结果集。无论你是初学者还是希望巩固知识的开发者,这篇文章都将为你提供宝贵的实践知识。
|
3月前
|
数据库
基于PHP+MYSQL开发制作的趣味测试网站源码
基于PHP+MYSQL开发制作的趣味测试网站源码。可在后台提前设置好缘分, 自己手动在数据库里修改数据,数据库里有就会优先查询数据库的信息, 没设置的话第一次查询缘分都是非常好的 95-99,第二次查就比较差 , 所以如果要你女朋友查询你的名字觉得很好 那就得是她第一反应是查和你的缘分, 如果查的是别人,那不好意思,第二个可能是你。
52 3