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));
相关推荐
西猫雷婶1 天前
scikit-learn/sklearn学习|广义线性回归损失函数的基本表达式
深度学习·神经网络·学习·机器学习·线性回归·scikit-learn·概率论
KKKlucifer1 天前
网络安全等级保护:等级保护工作、分级保护工作、密码管理工作三者之间的关系
网络·安全·web安全
Lynnxiaowen1 天前
今天继续学习shell脚本
linux·运维·学习·云计算·bash
落羽的落羽1 天前
【C++】C++11的包装器:function与bind简介
c++·学习
sucool_lb1 天前
GEM5学习(5): ARM 架构功耗仿真
arm开发·学习
尚久龙1 天前
安卓学习 之 图片控件和图片按钮
android·java·学习·手机·android studio·安卓
守.护1 天前
云计算学习笔记——HTTP服务、NFS服务篇
笔记·学习·云计算
wdfk_prog1 天前
[Linux]学习笔记系列 -- lib/dump_stack.c 栈回溯打印(Stack Trace Dumping) 内核调试与错误诊断的基石
linux·运维·服务器·c语言·笔记·学习
i.ajls1 天前
无监督学习,推荐系统以及强化学习笔记
笔记·学习·机器学习
dragoooon341 天前
[优选算法专题二滑动窗口——串联所有单词的子串]
数据结构·c++·学习·算法·leetcode·学习方法