1.MySQL数据库简介
按照一个图表去理解
2.MySQL数据库的可视化工具
(1)phpmyadmin
(2)Navicat for MySQL
3.可视化工具的【增删改查】操作
两种方法
4.php连接数据库与基本操作配置
(1)php创建数据库【连接】
语法:Object mysqli_connect("域名","DB账号","DB密码","DB库名")
例子:$con = mysqli_connect('localhost','root','','frankdb');
(2)向DB中插入数据时包含中文出现乱码的解决方案
语法:mysqli_query($con,"set names utf8");
说明:设置成功会返回1,根据实际情况并不一定必须保存返回结果。
(3)设置client端和server端保持字符编码一致
语法:mysqli_query($con,"set character_set_client=utf8");
mysqli_query($con,"set character_set_results=utf8");
(4)执行sql语句
语法:$结果 = $DB连接->query(sql语句);
例子:var_dump($result = $con->query($sql));
5.php操作数据库【增删改查】操作
(1)使用sql语句基本【模板】
$con = mysqli_connect('localhost','root','','frankdb'); //建立连接
if($con){ //判断是否连接
echo "<pre>";
mysqli_query($con,'set names utf8'); //设置编码
mysqli_query($con,'set character_set_client=utf8');
mysqli_query($con,'set character_set_results=utf8');
$sql = 'select * from friendslist where 1'; //创建sql语句
$result = $con->query($sql); //执行sql语句
if($result->num_rows>0){ //判断结果条数
for($i=0,$jsonInfo=[]; $row=$result->fetch_assoc();$i++){
$jsonInfo[] = $row; //拼凑结果
}
echo json_encode($jsonInfo); //json返回
}
}
(2)sql查询语句
语法:$sql = "select 【信息】 from 【哪张表】 where 【查询条件】";
(3)sql插入语句
语法:
$sql = "insert into 表名(字段1,字段2,...) values ('值1','值2',...)";
$sql = "insert into 表名 values(值1,值2,...)";
(4)sql修改语句
语法:$sql = “update 表名 set 字段1='新值1',… where id=$id",…;
注意:修改的关键词是update,而不是updata!!
注意:where后面的条件可以和修改的内容相同。
(5)sql删除语句
语法:$sql = 'delete from 表名 where 条件';
6.html与php+MySQL完成前后端交互
前端关键部分代码:【ajax请求】
$.ajax({
type:'post',
url:'add.php',
dataType:"json",
data:{
friendsName:$('.fname').val(),
…
},
success:function(data){console.log(data);},
error:function(error){console.log(error);}
});
后台部分代码:【php接受ajax request,并通过echo给出response】
$con = mysqli_connect('localhost','root','','frankdb');
$success = array("code" => "success");
$error = array("code" => "error");
if($con){
mysqli_query($con,'set names utf8');
mysqli_query($con,'set character_set_client=utf8');
mysqli_query($con,'set character_set_results=utf8');
$fname = $_POST['friendsName'];
…
$result = $con->query("insert into friendslist values($fname,…)");
if($result){
echo json_encode($success);
}
}else{
echo json_encode($error);
}
7.登录流程
(1)将用户输入信息发送给后台--------ajax请求实现
(2)后台接收用户发送的内容--------php中的
_GET对象获取
(3)在数据库中搜索目标条目--------sql查询语句
(4)返回前端response--------echo语句返回json_encode内容