PHP连接MySQL与数据读取示例

需积分: 9 0 下载量 166 浏览量 更新于2024-07-26 收藏 88KB DOC 举报
“php常用代码,包括连接MySQL数据库和读取数据库并循环输出的实例。” 在PHP编程中,常会遇到与数据库交互的需求,本摘要提供的代码示例主要展示了如何使用PHP连接MySQL数据库以及如何从数据库中读取数据并进行循环输出。首先,我们来看连接MySQL数据库的代码: ```php <?php $connec = mysql_connect("localhost", "root", "root") or die("不能连接数据库服务器:" . mysql_error()); mysql_select_db("liuyanben", $connec) or die("不能选择数据库:" . mysql_error()); mysql_query("setnames 'gbk'"); ?> ``` 这段代码中,`mysql_connect()` 函数用于连接到本地的MySQL服务器("localhost"),并使用 "root" 用户名和密码进行身份验证。如果连接失败,`die()` 函数会输出错误信息并终止脚本。`mysql_select_db()` 函数用于选择要操作的数据库,在这个例子中是 "liuyanben"。`mysql_query("setnames 'gbk'");` 是设置字符集为GBK,以确保中文字符能正确处理。 接下来,是读取数据库并实现循环输出的代码: ```php <?php $sql = "select * from liuyan order by ly_id desc"; $conn = mysql_query($sql, $connec); while ($rs = mysql_fetch_array($conn)) { ?> <table width="476" border="1" cellspacing="0" cellpadding="0"> <tr> <td width="135" height="30"><div align="center">留言主题</div></td> <td width="204" height="30"><div align="center">留言时间</div></td> <td width="129" height="30"><div align="center">留言人</div></td> </tr> <tr bgcolor="#CC9999"> <td height="30"><?=$rs["ly_title"]?> <div align="center"></div></td> <td height="30"><?=$rs["ly_time"]?> <div align="center"></div></td> <td height="30"><?=$rs["ly_author"]?> <div align="center"></div></td> </tr> <tr> <td height="30"><div align="center"><a href="huifu.php?id=<?=$rs["ly_id"]?>">回复留言</a></div></td> <td height="30"><div align="center"><a href="viewhuifu.php?id=<?=$rs["ly_id"]?>">查看回复</a></div></td> </tr> </table> <?php } ?> ``` 这段代码首先定义了一个SQL查询语句,用于从 "liuyan" 表中选取所有列,并按 "ly_id" 字段降序排列。`mysql_query()` 函数执行这个查询,返回结果集。接着,`while` 循环遍历结果集中的每一行,使用 `mysql_fetch_array()` 获取当前行的数据,并将其存储在 `$rs` 数组中。在循环内部,代码创建了一个HTML表格,显示了每条留言的主题、时间和作者,并提供了回复和查看回复的链接。 值得注意的是,这些代码使用了已经废弃的 `mysql_` 函数系列,如 `mysql_connect()` 和 `mysql_query()`。在新的PHP版本中,推荐使用 `mysqli_` 或 `PDO` 扩展来处理数据库操作,因为它们提供更好的性能和安全性。例如,可以使用 `mysqli_connect()` 来替换 `mysql_connect()`,使用 `mysqli_query()` 替换 `mysql_query()`,并且在处理结果集时,可以使用 `mysqli_fetch_assoc()`。 此外,为了提高代码可读性和可维护性,建议遵循一定的编码规范,例如使用更现代的模板引擎(如Twig)来分离业务逻辑和视图,以及使用预处理语句防止SQL注入等安全问题。对于字符集设置,推荐使用 `utf8mb4`,以支持更多Unicode字符。