# PHP学习(二) php与mysql
# mysql基础sql命令
# 显示数据库
shwo databases;
1
# 创建数据库并设置字符集
create database if not exists 数据库名 default charset utf8 collate utf8_general_ci;
1
# 选中数据库
use database;
1
# 创建数据表
create table `数据库名`,`数据表名`(
`字段名` 类型 是否非空 自动增长 注释
);
1
2
3
2
3
# 查询语句
查所有 select * from 表名
条件查 select * from 表名 where 字段名 = 值;
1
2
2
# 修改语句
update 表名 set 属性 = 值 where 属性 = 值
1
# 删除语句
delete from 表名 where 属性 = 值;
1
# count函数---查数量
select count(*) from 表名 where 字段名 = 值;
1
# min函数---求最小值
SELECT min(`字段名`) FROM `表名` WHERE 1
1
# max函数---求最大值
SELECT max(`字段名`) FROM `表名` WHERE 1
1
# sum函数---求和
SELECT sum(`字段名`) FROM `表名` WHERE 1
1
# sqrt函数---求平方根
SELECT sqrt(`字段名`) FROM `表名` WHERE 1
1
# first函数---符合条件的第一个
SELECT first(*) FROM `表名` WHERE 1
1
# last函数---符合条件的最后一个
SELECT last(*) FROM `表名` WHERE 1
1
# len函数---求长度
SELECT len(*) FROM `表名` WHERE 1
1
# now函数---显示当前的时间
select now();
1
# rand函数---得到一个随机数
select rand();
-- 可以通过乘一个数达到想要的范围
select rand() *100;
1
2
3
2
3
# concat函数---拼接字符串
select concat('AAA','BBB');
1
# 条件查询where子句
范围查询
1、select * FROM 表名 where 字段名 >= '2002-01-01' AND 字段名 <= '2004-01-01';
2、select * from 表名 where 字段名 between '2002-01-01' and '2004-01-01'
between--and:在谁和谁之间
1
2
3
2
3
筛选查询
select * from 表名 where 字段名 like '%王%'
1
# 排序
select * from 表名 order by 字段名 ASC; 默认正序排序 ASC(可被省略)
select * from 表名 order by 字段名 DESC; 逆序排序 DESC
1
2
2
# 多表联查
select 表1字段名,表2字段名 from 表1,表2 where 表1字段名 = 表2字段名
1
# php与mysql连接
# 连接数据库
mysqli_connect(servername,username,password);
servername: 可选,规定要连接的服务器,默认为:“localhost:3306” username: 可选,规定登录使用的用户名。默认值是拥有服务器进程的用户名称。 password:可选,规定登录所用的密码,默认是“”
<?php
$con = mysqli_connect("localhost","root","");
if (!$con) {
die('Could not connect: ' .mysqli_error($con));
} else {
echo 'success';
}
mysqli_close($con);
?>
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 选择指定的数据库
mysqli_select_db($con, 'phplesson');
1
# 设置存储编码
设置utf-8编码
mysqli_set_charset($con,"utf8");
1
# 执行SQL语句
$sql = "DELETE FROM `news` WHERE `newsid` = 1;";
$result = mysqli_query($con, $sql);
1
2
2
# 前后联调demo
# 前端输入数据提交,后台存入数据库
前端页面,表单提交数据
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>新闻管理系统</title>
</head>
<body>
<form action="mysql1.php">
<p>
<label for="newstitle">新闻标题</label>
<input type="text" id="newstitle" name="newstitle">
</p>
<p>
<label for="newsimg">图片地址</label>
<input type="text" id="newsimg" name="newsimg">
</p>
<p>
<label for="newscontent">新闻内容</label>
<textarea id="newscontent" name="newscontent" cols="30" rows="10"></textarea>
</p>
<p>
<label for="addtime">新闻时间</label>
<input type="date" id="addtime" name="addtime">
</p>
<p>
<input type="submit" value="提交">
<input type="reset" value="重置">
</p>
</form>
</body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
后台php程序,接受数据并插入到数据库
<?php
$con = mysqli_connect("localhost","root","");
header("Content-type: text/html; charset=utf-8");
if (!$con) {
die('Could not connect: ' .mysqli_error($con));
} else {
mysqli_select_db($con, 'phplesson');
//从前端传来数据存储到数据库
$newstitle = $_REQUEST["newstitle"];
$newsimg = $_REQUEST["newsimg"];
$newscontent = $_REQUEST["newscontent"];
$addtime = $_REQUEST["addtime"];
$sql = "INSERT INTO `news`(`newstitle`, `newsimg`, `newscontent`, `addtime`) VALUES ('".$newstitle."','".$newsimg."','".$newscontent."','".$addtime."');";
mysqli_set_charset($con,"utf8");
$result = mysqli_query($con, $sql);
if (!$result) {
die('Error:'.mysqli_error($con));
} else {
echo 'success';
}
}
mysqli_close($con);
?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 查询数据
将查询的数据转成json格式输出
<?php
$con = mysqli_connect("localhost","root","");
header("Content-type: text/html; charset=utf-8");
if (!$con) {
die('Could not connect: ' .mysqli_error($con));
} else {
mysqli_select_db($con, 'phplesson');
$sql = "SELECT * FROM `news`";
mysqli_set_charset($con,"utf8");
$result = mysqli_query($con, $sql);
$arr = array();
while ($row = mysqli_fetch_array($result)) {
array_push($arr,array("newstitle"=>$row['newstitle'],"newsimg"=>$row['newsimg']));
}
$result = array("errcode"=>0,"result"=>$arr);
echo json_encode($result);
}
mysqli_close($con);
?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19