PHP 知识量:7 - 20 - 67
要使用php向数据库的表中插入数据可以使用mysqli_query()函数,它接受一个SQL字符串参数,然后执行该SQL字符串规定的操作。
假设数据库中有一个名为“person”的表,它的结构和数据内容如下所示:
id | name | age | sex |
---|---|---|---|
1 | jeff | 30 | male |
下面使用php代码插入一条新的数据:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <?php //数据库服务器的URL地址 $host = 'localhost'; //数据库服务器用户名 $username = 'james'; //数据库服务器登录密码 $passwd = '1a2b3c'; //数据库名称 $dbname = 'website'; //建立数据库连接。 $con = mysqli_connect($host, $username, $passwd, $dbname); //插入数据的SQL语句 $sql = "insert into person (name,age,sex) values ('james',40,'male')"; //执行数据库操作 if (mysqli_query($con, $sql)) { echo '添加成功'; } else { echo '添加失败'; } //关闭数据库连接 if (mysqli_close($con)) { echo '数据库已关闭'; } ?> </body> </html>
以上代码中,在建立数据库连接后,首先设置了变量$sql,它的内容为一条插入数据的SQL语句。然后调用mysqli_query()函数,它有两个参数,第一个是数据库连接资源变量$con,第二个是SQL语句变量$sql。mysqli_query()函数如果执行插入操作成功就返回“TRUE”,失败返回“FALSE”。操作成功后的表person变为:
id | name | age | sex |
---|---|---|---|
1 | jeff | 30 | male |
2 | james | 40 | male |
删除数据同样可以使用mysqli_query()函数,只需要将传入的SQL语句修改为删除语句即可。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <?php //数据库服务器的URL地址 $host = 'localhost'; //数据库服务器用户名 $username = 'james'; //数据库服务器登录密码 $passwd = '1a2b3c'; //数据库名称 $dbname = 'website'; //建立数据库连接。 $con = mysqli_connect($host, $username, $passwd, $dbname); //删除数据的SQL语句 $sql = "delete from person where id=1"; //执行数据库操作 if (mysqli_query($con, $sql)) { echo '删除成功'; } else { echo '删除失败'; } //关闭数据库连接 if (mysqli_close($con)) { echo '数据库已关闭'; } ?> </body> </html>
以上代码中,变量$sql的内容为一条删除数据的SQL语句,调用mysqli_query()函数后,对应的数据就会被删除。
修改数据同样可以使用mysqli_query()函数,只需要将传入的SQL语句修改为更新语句即可。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <?php //数据库服务器的URL地址 $host = 'localhost'; //数据库服务器用户名 $username = 'james'; //数据库服务器登录密码 $passwd = '1a2b3c'; //数据库名称 $dbname = 'website'; //建立数据库连接。 $con = mysqli_connect($host, $username, $passwd, $dbname); //修改数据的SQL语句 $sql = "update person set name='peter' where id=2"; //执行数据库操作 if (mysqli_query($con, $sql)) { echo '更新成功'; } else { echo '更新失败'; } //关闭数据库连接 if (mysqli_close($con)) { echo '数据库已关闭'; } ?> </body> </html>
以上代码与插入、删除语句不同之处在于变量$sql的值变为了一条更新数据的SQL语句。
查询数据操作的代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <?php //数据库服务器的URL地址 $host = 'localhost'; //数据库服务器用户名 $username = 'james'; //数据库服务器登录密码 $passwd = '1a2b3c'; //数据库名称 $dbname = 'website'; //建立数据库连接。 $con = mysqli_connect($host, $username, $passwd, $dbname); //查询数据的SQL语句 $sql = "select * from person"; //执行数据库操作,获取结果集。 $res = mysqli_query($con, $sql); //获取结果集中的数据条数 $record = mysqli_num_rows($res); //如果查询到记录 if ($record > 0) { //循环获取每条结果信息 while ($row = mysqli_fetch_array($res)) { $id = $row['id']; $name = $row['name']; $age = $row['age']; $sex = $row['sex']; echo "id is $id,name is $name,age is $age,sex is $sex<br>"; } } //关闭数据库连接 if (mysqli_close($con)) { echo '数据库已关闭'; } ?> </body> </html>
与此前相同,先建立数据库连接,随后:
设置查询语句并赋值给变量$sql。
使用mysqli_query()函数,执行查询操作,并将查询结果资源(结果集)赋值给变量$res。
使用mysqli_num_rows()函数,获取查询到的信息条数,其参数为结果集变量$res。
如果查询到了1条以上的数据,则使用循环语句遍历结果集。其中mysqli_fetch_array()函数用于逐行获取结果信息,每行信息赋值给变量$row。mysqli_fetch_array()函数的参数为结果集变量$res。
通过变量$row,以获取数组元素值的方式访问每项数据,然后赋值给相应变量,并最终打印出来。
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6