PHP_Study

php连接数据库

第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址

1
2
3
4
5
6
7
8
9
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
var_dump($conn);
?>

返回这个说明连接成功

image-20230328153359251

返回这个说明数据库连接失败,可能是ip错了

image-20230328153537406

返回这个说明是数据库账号错了

image-20230328153756724

返回这个说明是数据库密码错了

image-20230328153829750

接下来开始连接数据库然后打印数据库表内容

1
2
3
4
5
6
7
8
9
10
11
12
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
// 执行SQL语句,这里是意思是把整张test02表格输出
$sql = "SELECT * FROM test02";
$result = mysqli_query($conn,$sql);
var_dump($result);
?>

*看到这个说明我们执行成功,后面int(4)说我们有4条记录,我们数据表确实有4条记录,那么为啥没有具体是查询出来捏( ̄▽ ̄),我们得转换一下将执行结果转换成为结果集

image-20230328154327099

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
// 执行SQL语句,这里是意思是把整张test02表格输出
$sql = "SELECT * FROM test02";
$result = mysqli_query($conn,$sql);
$data = mysqli_fetch_assoc($result);
var_dump($data);
?>

下面这个则是输出值:(你会发现,为啥我四行的数据表只输出了一行)

image-20230328155530623

这个时候,我们使用循环遍历,把一个个数据表遍历出来

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
//var_dump($conn);
// 执行SQL语句
$sql = "SELECT * FROM test02";
$result = mysqli_query($conn,$sql);
// 将执行结果转换成为结果集
while($data = mysqli_fetch_assoc($result)){
var_dump($data);
}
?>

image-20230328161200638

数据都遍历出来了,但是很密集,我这给它空几行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
//var_dump($conn);
// 执行SQL语句
$sql = "SELECT * FROM test02";
$result = mysqli_query($conn,$sql);
// 将执行结果转换成为结果集
while($data = mysqli_fetch_assoc($result)){
var_dump($data);
echo '<br />';
echo '<br />';
}
?>

这样看就舒服多了,是不是捏( ̄▽ ̄)*

image-20230328161509400

如果我需要它的名字怎么办?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
//var_dump($conn);
// 执行SQL语句
$sql = "SELECT name FROM test02"; #这里把*改name
$result = mysqli_query($conn,$sql);
// 将执行结果转换成为结果集
while($data = mysqli_fetch_assoc($result)){
var_dump($data);
echo '<br />';
echo '<br />';
}
?>

image-20230328161904981

但是,还是不够简洁,那么可以改成这样

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//第一步确认数据库的位置,用户名,密码,位置,ip地址或者网址,后面or die是前面发生错误就会触发后面提示
$conn = mysqli_connect('10.71.10.25','root','Asimov') or die('链接mysql数据库服务器失败');
//选择要操作的数据库
mysqli_select_db($conn,'test');
//设置数据库的编码格式
mysqli_query($conn,'set names utf8');
//var_dump($conn);
// 执行SQL语句
$sql = "SELECT * FROM test02"; #这里把name改*也可以
$result = mysqli_query($conn,$sql);
// 将执行结果转换成为结果集
while($data = mysqli_fetch_assoc($result)){
echo $data['name'];
echo '<br />';
echo '<br />';
}
?>

image-20230328162301304