用php操作mysql数据库:在web页面显示查询内容
初次学习用php操作数据库,做一做笔记,简单的总结一下如何在web界面输出查询内容和向数据库中添加记录。如有错误,望评论指正。
就是用php嵌套HTML代码,用一个table输出。
在学习中遇到一些问题:
如果在sql语句里面插入的字段有中文的话,在web界面会出现乱码的情况
解决方法:最重要的两个步骤就是
1).打开my.ini文件:找到default-character-set,把它设置为utf8,default-character-set=utf8
2).在php代码里面写上mysqli_query("set names "utf8"");
具体设置看此链接:
点击打开链接
2.每次执行一次insert的sql语句就会向数据库中插入同样的数据
解决方法:设置主键唯一标识
以下是整个代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<table style="text-align:left;border:solid" border="1">
<tr><td>姓名</td><td>年龄</td></tr>
<?php
$conn = mysqli_connect("localhost","root","");
if($conn){
echo "连接成功";
}else{
echo "连接失败";
}
mysqli_query($conn,"insert into myapp.course
values("008","计算机系统",48,6,"002")");
mysqli_query($conn, "insert into myapp.course
values("009","嵌入式",48,6,"001")");
mysqli_query($conn,"insert into myapp.student values("98030110","张九",20,"女","980301","03")");
mysqli_query($conn, "insert into myapp.student values("98030111","张十",19,"男","980301","04")");
mysqli_query($conn,"use myapp");
mysqli_query($conn,"set name utf-8");
$sql = "select Sname,Sage from Student where ssex="男"";
$retval = mysqli_query($conn,$sql);
echo "<h3>在WEB页面显示以下内容:学生表中所有男生的年龄及姓名;</h3>";
// $row=mysqli_fetch_assoc($retval);
// print_r($row);
// $row=mysqli_fetch_assoc($retval);
// print_r($row);//这个只能一行一行的输出
$num=mysqli_num_rows($retval);
//这里用一个for循环输出所有满足条件的查询语句
for ($i=0; $i <$num ; $i++) {
$row=mysqli_fetch_assoc($retval);
$name=$row["Sname"];
$age=$row["Sage"];
echo "<tr><td>$name</td><td>$age</td><tr>";
}
//快速获取数据的条数,不用通过查询所有条数
$result=mysqli_query($conn,"select count(*)from course");
$num1=mysqli_fetch_array($result);
echo "数据条数".$num1[0];
?>
</table>
</body>
</html>
这是运行后的效果:
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
