用php操作mysql数据库:在web页面显示查询内容

本文介绍如何使用PHP连接MySQL数据库,并实现基本的CRUD操作。重点解决中文乱码问题及重复数据插入难题,附带示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初次学习用php操作数据库,做一做笔记,简单的总结一下如何在web界面输出查询内容和向数据库中添加记录。如有错误,望评论指正。

就是用php嵌套HTML代码,用一个table输出。

在学习中遇到一些问题:

1.PHP无法向MYSQL插入中文记录

如果在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>


     这是运行后的效果:



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值