web安全学习笔记(10)

记一下第十四节课的内容。

一、MySQL学习

数据库基本结构:库------表------列------值

在本地打开navicat,连接数据库,新建一个liuyan库、liuyan库下新建一个member表:

在表里随意添加一些数据:

下面我们学习MySQL查询。新建一个查询并进行最简单的查询示例:

sql 复制代码
SELECT * FROM member;

除此之外,还有删除DELETE操作和更新UPDATE以及插入INSERT操作,之前都学过,不再赘述,这就是MySQL的增删改查。

二、Class类

用一个实例说明class类的使用:

php 复制代码
<?php

class test
{
    public function go($msg)
    {
        echo $msg;
    }
}

$a = new test();
$a->go("hello!");

三、PHP连接MySQL数据库

在MySQL中新建一个用户liuyan,密码为123456,并设置其权限为对liuyan数据库进行所有操作。这样做的目的是为了保证数据库的安全。

接下来我们使用mysqli来实现PHP连接数据库。

新建一个db.php文件,输入以下内容:mysqli_connect_error() 返回连接错误信息

php 复制代码
<?php

$db = new mysqli('172.20.10.3','liuyan','123456','liuyan',3306);
if(mysqli_connect_errno() != 0){
    echo 'MySQL连接产生错误';
    echo mysqli_connect_error();
}

打开http://172.20.10.3/db.php,会发现网页无内容,说明没错:

$db就是实例化了一个mysqli对象,mysqli_connect_errno()函数作用返回上次连接调用的错误代码,如果没有发生错误则返回0;mysqli_connect_error()函数作用返回连接错误信息。

如果出现错误的话,比如说我们把密码故意改为错误的,再打开网页,就会报错:

但是我们看到不但echo了"MySQL连接产生错误"和连接错误的信息,还出现了MySQL本身的错误信息,我们可以使用@将其屏蔽掉,避免暴露连接信息。

php 复制代码
<?php

$db = @new mysqli('172.20.10.3','liuyan','1234567','liuyan',3306);
if(mysqli_connect_errno() != 0){
    echo 'MySQL连接产生错误';
    echo mysqli_connect_error();
}

然后我们可以进行查询,并输出:

php 复制代码
<?php

$db = @new mysqli('172.20.10.3','liuyan','123456','liuyan',3306);
if(mysqli_connect_errno() != 0){
    echo 'MySQL连接产生错误';
    echo mysqli_connect_error();
}
$sql = "select * from member where username = 'admin';";
$result = $db->query($sql);
var_dump($result->fetch_all(MYSQLI_ASSOC));
相关推荐
视觉小萌新9 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
yyyang8812 小时前
蓝牙系统整体架构详解
学习·信息与通信
程序边界12 小时前
一台数据集成软件的拆解笔记(下):一致性、容错、跑批与迁移,KFS 真正难的地方在这
java·前端·笔记
Linux-lucky12 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
金色光环14 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
Дерек的学习记录14 小时前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
zhangrelay14 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
熊猫钓鱼>_>15 小时前
平行视界兼容模式与魔法变量配置避坑【鸿蒙心迹】
运维·服务器·开发语言·笔记·华为·harmonyos·openharmony
kingx315 小时前
Bugku WEB 题解总集:文件包含 / SQLi / 反序列化 / SSTI / 反爬 / 组件漏洞
web安全·网络安全·ctf·bugku
衡石科技15 小时前
让多轮问数保持口径一致:Data Agent 的上下文、偏好与学习开关
人工智能·学习·安全