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));
相关推荐
007php00740 分钟前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
知识分享小能手1 小时前
微信小程序入门学习教程,从入门到精通,微信小程序核心 API 详解与案例(13)
前端·javascript·学习·react.js·微信小程序·小程序·vue
递归不收敛1 小时前
吴恩达机器学习课程(PyTorch 适配)学习笔记:3.3 推荐系统全面解析
pytorch·学习·机器学习
啥都不懂的小小白2 小时前
密码学入门:从古典加密到现代网络安全
安全·web安全·密码学
又是忙碌的一天3 小时前
前端学习 JavaScript(2)
前端·javascript·学习
蒙奇D索大3 小时前
【数据结构】考研数据结构核心考点:二叉排序树(BST)全方位详解与代码实现
数据结构·笔记·学习·考研·算法·改行学it
玲娜贝儿--努力学习买大鸡腿版4 小时前
推荐算法学习笔记(十九)阿里SIM 模型
笔记·学习·推荐算法
光影少年4 小时前
Flutter生态及学习路线
学习·flutter
尤利乌斯.X4 小时前
复杂网络仿真从入门到精通:0 学习路线
网络·学习·matlab·仿真·复杂网络
梦幻精灵_cq4 小时前
70行代码展现我的“毕生”编程能力
学习