开发PHP系统过程中,对数据库(mysql)的访问操作绝对免不了。
今天来介绍一个简单的数据库工具类class.mysql.php。
首先我们要有一个配置文件,用来存放连接数据库的各种信息和一些基本信息。
于是有了config.inc.php
// 定义数据库服务器
define('DB_SERVER', "localhost");
// 定义数据库登录名
define('DB_USER', "root");
// 定义数据库登录密码
define('DB_PWD', null);
// 定义数据库名称
define('DB_DATABASE', "username_mydata");
/*
为了更高效的开发,推荐以下做法
1. 定义表的前缀
2. 用全局变量定义数据库表名
*/
define('TABLE_PRE', "stuot_");
define('TABLE_USERS', "users");
define('TABLE_NEWS', "news");
注:用全局变量定义数据库表名可以方便系统的维护,因为一旦需要修改表名,只需要修改定义的内容就全局可以应用了。
接下来,我们来使用轻盈快捷的数据库工具类class.mysql.php
首先在php文件头,我们需要初始化数据库
require("config.inc.php");
require("mysql.class.php"); // 这里定义文件名,看自己习惯吧
$db = new Database(DB_SERVER, DB_USER, DB_PWD, DB_DATABASE);
接下来介绍一下Mysql类
1. 变量
var $server = ""; //数据库服务器
var $user = ""; //数据库登录用户名
var $pass = ""; //数据库登录用户密码
var $database = ""; //数据库名称
var $pre = ""; //表前缀
var $error = ""; //错误信息
var $errno = 0; //错误代码
//SQL查询后影响的行数
var $affected_rows = 0;
var $link_id = 0;
var $query_id = 0;
2. 构造函数(php当中还是用“函数”比“方法”好)
function Mysql($server, $user, $pass, $database, $pre=''){
$this->server=$server;
$this->user=$user;
$this->pass=$pass;
$this->database=$database;
$this->pre=$pre;
}
3. 连接数据库函数connect($new_link=false)
当以connect(true)调用的时候,将强制要求建立一个新的link,哪怕是之前已经以同样的参数调用了mysql_connect()。
function connect($new_link=false) {
$this->link_id=@mysql_connect($this->server,$this->user,$this->pass,$new_link);
if (!$this->link_id) {//建立连接失败
$this->oops("Could not connect to server: <b>$this->server</b>.");
}
if(!@mysql_select_db($this->database, $this->link_id)) {//连接数据库失败
$this->oops("Could not open database: <b>$this->database</b>.");
}
// 回收变量
$this->server='';
$this->user='';
$this->pass='';
$this->database='';
}
洋人写东西就是好玩,oops函数是显示错误信息函数,将在下面介绍。
4. 获取所有结果
# Desc: 返回所有结果
# param: SQL SELECT语句
# returns: assoc array of ALL fetched results
function fetch_all_array($sql) {
$query_id = $this->query($sql);
$out = array();
while ($row = $this->fetch_array($query_id)){
$out[] = $row;
}
$this->free_result($query_id);
return $out;
}
PHP开发当中结果的分页显示免不了,这个工具类在这方面有待改进。
& PHP OOP?? SCREW U!!
分享到:
相关推荐
总的来说,PHP MySQL类库是提升PHP数据库操作效率和代码质量的有效工具。它将复杂的数据库操作封装起来,使开发者能更专注于业务逻辑,而非数据库交互的细节。正确理解和使用这类库,可以极大地提升开发效率,同时也...
"mysql备份类.class.rar" 提供的可能是一个PHP类库,用于简化MySQL数据库的备份过程。下面将详细讨论MySQL备份的相关知识点。 1. **手动备份** - 使用`mysqldump`工具:这是MySQL官方提供的命令行工具,可以生成...
MySQL.class.php是一个PHP类文件,专门用于连接和操作MySQL数据库。在PHP中,类是一种自定义数据类型,它封装了变量(属性)和函数(方法),使得代码更加模块化和可重用。在这个特定的场景中,`mysql.class.php`...
总的来说,"mysql.class.php"这个PHP类库为MySQL数据库操作提供了一套便捷的工具,通过封装常见的数据库操作,降低了开发难度,提高了开发效率。掌握这样的类库设计,有助于开发者在面对复杂数据库应用场景时...
`sqlhelper.class.php`可能是封装了数据库操作的工具类,提供了一种安全、便捷的方式来执行SQL语句。它可能包含了如`query()`、`insert()`、`update()`和`delete()`等方法,用于CRUD(创建、读取、更新、删除)操作...
### 在Eclipse中使用JDBC连接MySQL数据库的关键步骤与注意事项 #### 一、准备工作与环境配置 1. **下载MySQL数据库:** - 版本选择:MySQL 6.0。 - 下载地址:[http://dev.mysql.com/downloads/mysql/6.0.html]...
为了简化这一过程,开发者通常会创建一个工具类(Utility Class)来封装数据库连接的逻辑,提高代码的可复用性和可维护性。以下是对"php连mysql的工具类"这一主题的详细解释。 首先,我们来看一下PHP连接MySQL的...
标题“smtp.class.rar_...综上所述,这个“smtp.class.php”文件提供了一个功能丰富的PHP类,将SMTP邮件发送与MySQL数据库操作集成在一起,对于需要发送邮件且涉及数据库交互的PHP项目来说,这是一个高效、实用的工具。
在PHP开发中,经常会遇到对数据进行分页展示、与MySQL数据库交互以及文件上传的需求。以下是对这些核心功能的详细解释: ### 分页类(Page.class.php) 分页类是用于处理大量数据时的一种常见技术,它允许用户按页...
【PHP数据库链接类】是PHP开发中一个重要的概念,它允许程序员通过编程方式与各种数据库进行交互,如MySQL、PostgreSQL、SQLite等。在PHP中,数据库连接类通常被用来封装数据库操作,提供统一的接口,使得代码更易于...
总的来说,`excel-class.php` 是一个实用的工具,它将复杂的Excel和MySQL交互封装在一个简洁的类中,使得数据处理变得更加高效和方便。对于需要频繁进行这类操作的PHP开发者来说,它是一个不可多得的资源。
5. PHP数据库类封装:为了提高代码复用性和可维护性,开发者通常会创建一个数据库类,封装数据库连接、查询、事务处理等功能。这个压缩包可能就包含了一个这样的类文件,如`db.class.php`,其中包含了连接数据库的...
总的来说,通过创建这样一个PHP类,我们可以高效且灵活地备份MySQL数据库,这对于维护数据安全和管理Web应用程序的数据备份策略至关重要。在实际开发中,理解并掌握此类工具的原理和实现方式,将有助于提升我们的PHP...
在这个压缩包中,我们有三个核心类文件:`image.class.php`、`smtp.class.php`和`mysql.class.php`,它们分别对应邮件发送、MySQL数据库连接和图像处理(生成水印和缩略图)的功能。 首先,`smtp.class.php`是邮件...
Laravel 框架提供了一个强大的数据库迁移机制,允许开发者使用命令行工具 artisan 来管理数据库结构的变化。本文档将指导您如何使用 Laravel 进行数据库迁移,并详细介绍了迁移的机制和实现细节。 创建迁移 首先,...
在IT行业中,数据库管理和Web开发是两个至关重要的领域。在这个案例中,我们关注的是一个结合了PHP编程语言和MySQL数据库的项目,...对于学习PHP数据库交互和手机号码查询服务的开发者来说,这是一个很好的实践案例。
"php-mysql db类"这个主题涉及到的是PHP如何通过类来操作MySQL数据库,以便进行数据的存储和检索。这篇博文链接指向的是一个关于这个话题的讨论,虽然描述部分为空,但从标签和文件名我们可以推测出一些关键知识点。...
DBclass-master可能是一个包含具体数据库操作类的代码目录,里面可能包含各个数据库系统的子类文件。 在实际开发中,这样的类库可以帮助开发者统一数据库操作的接口,减少代码重复,提高代码复用性,并且通过面向...
这里的`MySql.class.php`是一个自定义数据库类,它应该封装了连接数据库、执行SQL语句等功能。 二、读取(Read) 读取数据通常使用`SELECT`语句。比如,我们要获取所有学生的信息,可以编写这样的代码: ```php $...
- **面向对象编程**:介绍类(class)、对象(object)、继承(inheritance)、封装(encapsulation)、多态(polymorphism)等概念。 - **错误处理**:讲解如何有效地捕获和处理运行时错误,确保程序的健壮性和稳定性。 - ...