PHP初学者必备:常用代码及分页实现
需积分: 33 94 浏览量
更新于2024-07-31
2
收藏 21KB DOCX 举报
"这篇资源是针对PHP初学者的,提供了PHP常用代码示例,包括连接MySQL数据库、读取数据库并循环输出数据以及实现分页功能的函数。"
在PHP编程中,掌握一些基础且常用的代码片段对于新手入门至关重要。这里我们将深入探讨提供的代码片段,并扩展相关知识。
1. 连接MySQL数据库
PHP使用`mysql_connect()`函数连接到MySQL服务器,该函数接受三个参数:服务器地址、用户名和密码。在示例中,它连接到本地主机("localhost"),使用"root"用户和默认密码。`mysql_select_db()`函数用于选择要操作的数据库。请注意,`mysql_`系列函数在较新的PHP版本中已废弃,推荐使用`mysqli_`或PDO进行数据库操作,因为它们更安全,支持更多特性。
```php
$connec = mysql_connect("localhost", "root", "root") or die("不能连接数据库服务器:" . mysql_error());
mysql_select_db("liuyanben", $connec) or die("不能选择数据库:" . mysql_error());
```
此外,`mysql_query("setnames 'gbk'");`用于设置字符集为GBK,确保中文数据正确显示。在现代实践中,通常推荐使用`utf8mb4`,因为它支持更多的Unicode字符。
2. 读取数据库并循环输出
这段代码通过`mysql_query()`执行SQL查询(获取`liuyan`表中的所有记录,按`ly_id`降序排列)。`mysql_fetch_array()`用于获取结果集中的每一行,然后在循环内部处理数据。
```php
$sql = "select * from liuyan order by ly_id desc";
$conn = mysql_query($sql, $connec);
while ($rs = mysql_fetch_array($conn)) {
// 循环的内容
}
```
在循环中,你可以访问数组 `$rs` 来获取列值,例如 `$rs['column_name']`。
3. 分页功能
分页是大型数据集展示的关键部分。这里有两个函数,一个用于计算分页信息,另一个用于显示分页链接。
- `genpage()` 函数接收一个SQL查询字符串和每页显示的记录数作为参数。它计算总记录数,确定总页数,并修改原始SQL以添加`LIMIT`子句,限制返回的数据量。注意,这个函数使用了全局变量来传递结果,这在实践中应避免,更佳的做法是通过参数或返回值传递这些信息。
- `显示分页`函数负责生成实际的分页链接。这个函数通常会根据`genpage()`返回的信息创建上一页、下一页和页码链接。
```php
function genpage(&$sql, $page_size = 2) {
// ...
}
function display_page() {
// ...
}
```
在实际项目中,这两个函数可能需要进一步改进,例如添加错误处理,使用预处理语句防止SQL注入,以及使用更灵活的URL结构。同时,考虑使用现有的成熟分页库,如`\Illuminate\Pagination\LengthAwarePaginator`(Laravel框架的一部分)或`\yii\data\Pagination`(Yii框架的一部分),它们提供了更多的功能和灵活性。
这个资源为PHP初学者提供了一些基本操作的起点,但要记住,随着技能的提高,应关注更现代、更安全的编程实践。
点击了解资源详情
点击了解资源详情
点击了解资源详情
120 浏览量
2009-01-07 上传
2016-02-26 上传
2012-12-21 上传
点击了解资源详情

zsy661
- 粉丝: 0
最新资源
- 西北工业大学自动化考研真题资料分享
- MFC框架下C++绘图系统开发教程
- 数独游戏开发:使用SFML库及CMake配置教程
- 折叠船平台装置设计行业文档
- ReactJS鞋店项目开发与React Router DOM路由实践
- CSDN技术主题月8月:直播技术与webrtc讲师PPT精华
- Spring 3.2.4学习必备:整合第三方jar包指南
- 掌握Android ViewPager的七种切换动画效果
- 实现ViewPager无限循环和自动滚动的Android开发技巧
- 开源可扩展ListView项目免费下载
- 扎钞机纸芯托架的设计装置行业文档
- VPP20.09版本插件开发实战:rpnplugin的完整流程解析
- 轻量级PHP模板引擎lovefc_Template v1.65功能介绍
- PCRE 8.38库:轻量级且功能强大的正则表达式库
- 经典票据打印控件分享及演示
- Java与AS3 Socket通信:逾越安全沙箱限制