web php+mysql基础

前端是什么?

image-20220619080151805

所有的网页的页面全都是前端书写出来的,后端指的是处理。

image-20220619090111009

HTML最简单的架构

image-20220619091515887

JS的妙用

image-20220619092908002

什么是数据库?

数据库就是将大量数据保存起来,通过计算机加工而成的可以高效访问的数据集合。

数据库是长期储存在计算机内、有组织的、可共享的数据集合。

数据库的基本知识

数据库结构
1、服务端:用于接收并处理其它程序发出的请求的程序(软件),或者是安装此类程序的设备(计算机)。
2、客户端:向服务器发出请求的程序(软件),或者是安装此类程序的设备(计算机)。

​ 3、库:就是一堆表组成的数据集合
​ 4、表(table):类似Excel,由行和列组成的二维表。

​ 5、字段:表的列(垂直方向)。
​ 6、记录:表的行(水平方向)。[ 注意 ] 关系数据库必须以行为单位进行数据读写。

WEB 访问:服务端:访问的服务器(中间件)客户端:浏览器

基本SQL语法

SQL语句:用关键字、表名和列名等组合而成的一条语句

3种SQL语句种类:

​ (1)DDL(数据定义语句):创建、删除或修改数据库以及数据库中的表等对象。

​ 1、CREATE:创建数据库和表等对象

​ 2、DROP:删除数据库和表等对象

​ 3、ALTER:修改数据库和表等对象

​ (2)DML(数据操作语言):查询或修改表中的记录。

​ 1、SELECT:查询表中的数据

​ 2、INSERT:向表中插入数据

​ 3、UPDATE:修改表中的数据

​ 4、DELETE:删除表中的数据

​ (3)DCL(数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中的对象权限进行设定。

数据库操作:

CREATE DATABASE db_name; [ 新建数据库 ]

Show databases; [ 查看所有数据库 ]

DROP DATABASE db_name; [ 删除数据库 ]

USE db_name; [ 使用数据库 ]

数据表操作:

CREATE TABLE table_name(column_name column_type); [ 新建表 ]

Show tables; [ 查看所有数据表 ]

DROP TABLE table_name; [ 删除表格 ]

Desc table_name; [ 查看表的类型 ]

ALTER TABLE table_name DROP 字段名; [ 删除表里面的字段 ]

ALTER TABLE table_name ADD 字段名 字段类型; [ 添加表里面的字段 ]

ALTER TABLE table_name change 旧字段 新字段 字段类型; [ 修改字段名和属性 ]

字段其实是有一些属性的。

主键 PRIMARY KEY [ 不能为空且唯一 ]

自增长 AUTO_INCREMENI

设置编码:CHARSET = utf8

NOT NULL 数据不能为空

数据类型:varchar(255) int(1) char float

https://www.runoob.com/mysql/mysql-data-types.html

插入数据:

INSERT INTO table_name (字段名,字段名) VALUES(字段值,字段值);

修改数据:

UPDATE table_name SET col_name = value WHERE 字段=字段值;

查询数据:

SELECT 字段名,字段名 FROM table_name WHERE 字段 = 字段值;

删除数据:

DELETE FROM table_name WHERE 字段=字段值;

查询当前库名:

SELECT database();

mysql字符串是可以接受16进制的

SQL语句书写规范:

1、以英文分号(;)结尾

2、SQL语句本身大小写不敏感,不区分关键字的大小写,[ 注意 ] 插入到表中的数据是区分大小写的,如 “HI”、“Hi”、“hi” 都不同。

3、关键字大写,表名和列名的首字母大写

4、单词使用英文空格或换行符隔开

常数的书写方式:

字符串、日期:用单引号括起来(''),如 Hello World,'2022-5-20'

数字:直接书写,不用加单引号,如 5

单引号闭合 引号括号成对出现 选库 表不能重复创建 字段插数据

MySQL的基础查询语句

select * from 表名 order by 字段

​ [ ASC(默认) / DESC ] 升序(从小到大)ASC,降序(从大到小)DESC

select * from 表名 limit n,m;

​ n 表示从第几行开始,m表示取几条

select * from 表名 where 字段名 like '% %'

​ 模糊查询

运算符号:+ - * / %

逻辑运算:NOT ( ! ) AND ( & ) OR ( | )

联合查询

表的内容无重复:

SELECT * FROM 表1 UNION SELECT * FROM 表2;

表的内容有重复:

SELECT * FROM 表1 UNION ALL SELECT * FROM 表2;

注意事项:

​ 两次查询的列数必须一致

子查询

官方定义:子查询是一种常用计算机语言SELECT-SQL语句中嵌套查询下层的程序模块。当一个查询是另一个查询的条件时,称之为子查询。

理解:子查询就如同 1+2*2=5 (1+2)*2=6

​ 子查询就是优先执行,然后执行得到的结果作为某个查询的条件

select * from 表名 where 字段名 = (select username from 表名where 字段名 = 字段值);

select * from user where username = (select username from admin where id = 1);

admin 表当 id = 1 的用户名是否在 user 表也存在

select * from user where username in (select username from admin)

检查 admin 表和 user 表是否有用户名相等

渗透测试常用函数

GROUP_CONCAT(col); 返回由属于一组的列值连接组合而成的结果

ASCII(char); 返回字符的ASCII码值

DATABASE(); 返回当前数据库名

USER()或SYSTEM_USER(); 返回当前登陆用户名

VERSION(); 返回MySQL服务器的版本

SLEEP(n); 休眠 n 秒

什么是PHP?

image-20220620001011463

PHP的基础语法

image-20220620001118939

运算符

image-20220620073731695

= 代表赋值

== 比较数值

=== 比较类型且比较数值

image-20220620074009945

image-20220620074135824

条件分支语句

if 选择语句

image-20220620074207195

switch 选择语句

image-20220620074333870

循环语句

for 循环语句

for(初始语句,判断语句,循环后的处理)

{ 循环体 }

while 循环语句

while(判断语句){ 循环体 }

image-20220620074945722

break 和 continue

image-20220620075301186
php中出现乱码加一行代码

meta charset = 'utf-8'

网页和服务器的两种交互方式(表单)

HTTP协议

HTTP请求头

​ HTTP请求方式(Request Method)

​ GET(得到)

​ POST(公布;邮递)

PHP获取表单

在这里插入图片描述

PHP操作MySQL

image-20220620080737253

什么是表单?

image-20220620115150996

表单标签:这里面包含了处理表单数据所用动态脚本的URL以及数据提交到服务器的方法。
表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。
表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的动态脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。(告诉我网站我要提交)

如何创建一个表单

image-20220620175219890

GET / POST => 浏览器提交数据的方式

GET => 在 URL 栏里面会出现的全部都是GET传参

​ 传参数据是有长度限制

POST => 不会在 URL 栏显示,相对来说安全一点

​ 没有长度限制

image-20220620180900000

接收并验证表单

用户和服务器

用户 -> 传递数据给服务器

服务器接受数据 处理 传递给我们

PHP文件可以有前端代码部分也可以有动态语言(PHP部分)

image-20220620075657273

PHP和数据库交互

image-20220620080737253

MySQL中的注释:–空格

前端登录页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>登录分数</title>
</head>
<body>
    <form action="test.php" method="POST">
        姓名<input type="text" name="name">
        <br>
        分数<input type="text" name="fenshu">
        <br>
        <input type="submit" value="提交">
    </form>
</body>
</html>

后端 处理数据

<?php
	$name = $_POST['name'];
	$fenshu = $_POST['fenshu'];
	if ($fenshu<60) {
		$i = 2;
		echo 'No';
	}
	else{
		$i = 1;
		echo "Yes";
	}
	$conn = mysqli_connect('localhost','root','root','ck');
	mysqli_select_db($conn,'ck');
	$sql = "insert into fenshu value('$name',$fenshu,$i)";
	echo "<br>";
	echo "$sql";
	$result = mysqli_query($conn,$sql);
?>

什么是正则表达式

在这里插入图片描述

PHP中正则表达式常用函数

image-20220620184326276

<?php
	//preg_match_all(正则表达式,匹配字符串,匹配到的东西放到数组)
	echo preg_match_all('/1/', '1231166', $c);
	echo "<br>";
	//preg_replace(正则表达式, 替换成什么, 匹配字符串)
	echo preg_replace('/1/','a','1as1w1f1g1k1q1er1');
?>

在这里插入图片描述

<?php
	//preg_match_all(正则表达式,匹配字符串,匹配到的东西放到数组)
	echo preg_match_all('/1/', '1231166', $c);
	echo "<br>";
	//preg_replace(正则表达式, 替换成什么, 匹配字符串)
	echo preg_replace('/1/','a','1as1w1f1g1k1q1er1');
	echo "<br>";
	echo preg_replace('/\d/','c','2a5w2aw6d4ad8a43d4w6');
	echo "<br>";
	echo preg_replace('/\D/','6','1a2d1awdw3ad431c3ds3fs1');
?>

image-20220620192958592

正则表达式语句

关键字

在这里插入图片描述

限定符 + 修饰符

image-20220620201031142

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值