php面象对象数据库操作类实例
作者:shichen2014 发布时间:2023-10-13 22:33:05
标签:php,面象对象,数据库
本文实例讲述了php面象对象数据库操作类。分享给大家供大家参考。
具体实现代码如下:
//此处构造一个数据库操作类,封装所有数据库操作
//可以扩展便于后台管理程序的使用
Class MySQLDB
{
var $host;
var $user;
var $passwd;
var $database;
var $conn;
//利用构造函数实现变量初始化
//同时连接数据库操作
function MySQLDB($host,$user,$password,$database)
{
$this->host = $host;
$this->user = $user;
$this->passwd = $password;
$this->database = $database;
$this->conn=mysql_connect($this->host, $this->user,$this->passwd) or
die("Could not connect to $this->host");
mysql_select_db($this->database,$this->conn) or
die("Could not switch to database $this->database");
}
//该函数用来关闭数据库连接
function Close()
{
MySQL_close($this->conn);
}
//该函数实现数据库查询操作
function Query($queryStr)
{
$res =Mysql_query($queryStr, $this->conn) or
die("Could not query database");
return $res;
}
//该函数返回记录集
function getRows($res)
{
$rowno = 0;
$rowno = MySQL_num_rows($res);
if($rowno>0)
{
for($row=0;$row<$rowno;$row++ )
{
$rows[$row]=MySQL_fetch_array($res);
//本来为MySQL_fetch_row,但是不能以数组的方式来提取,只能用索引
//这样可以用索引和名称,更为方便
}
return $rows;
}
}
//该函数取回数据库记录数
function getRowsNum($res)
{
$rowno = 0;
$rowno = mysql_num_rows($res);
return $rowno;
}
//该函数返回数据库表字段数
function getFieldsNum($res)
{
$fieldno = 0;
$fieldno = mysql_num_fields($res);
return $fieldno;
}
//该函数返回数据库表字段名称集
function getFields($res)
{
$fno = $this->getFieldsNum($res);
if($fno>0)
{
for($i=0;$i<$fno;$i++ )
{
$fs[$i]=MySQL_field_name($res,$i);//取第i个字段的名称
}
return $fs;
}
}
}
//使用时直接require该文件,然后实例化:
$SqlDB = new MySQLDB("localhost","root","root","testdb");
$sql = "select * from tableX...";
$result = $SqlDB->Query($sql);//查询
$rs = $SqlDB->getRows($result);//获得记录集
$num = $SqlDB->getRowsNum($result);//获得记录数
...剩下的操作就是循环取值,
for($i=0;$i<$num;$i++){
echo($rs[$i]["字段名"]);
}
...
最后不要忘记关闭数据路连接
$SqlDB->Close();
当然这句可以不要,php会自动注销!但是这样能够养成一个好的习惯,最好还是加上!其他自己类推。
希望本文所述对大家的PHP程序设计有所帮助。


猜你喜欢
- 把文件夹dir1中后缀为'.jpg'的文件拷贝到文件夹dir2中:import globimport shutilimpor
- 本文实例讲述了python中enumerate函数遍历元素用法。分享给大家供大家参考,具体如下:enumerate函数用于遍历序列中的元素以
- 今天群友提出一个问题:给出Word示例如下:对于这种嵌入文件在Word中都属于ole文件。下面我们假设需要读取每个嵌入的Excel文件中的p
- 前一段时间导师叫我写一个批处理的小程序,就是循环修改辐射传输模型软件MODTRAN的输入参数,然后运行MODTRAN软件进行计算,输出需要的
- Vue加载流程1.初始化的第一阶段是Vue实例也就是vm对象创建前后:首先Vue进行生命周期,事件初始化发生在beforeCreate生命周
- 使用Python解析各种格式的数据都很方便,比如json、txt、xml、csv等。用于处理简单的数据完全足够用了,而且代码简单易懂。前段时
- python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路
- 目录1. 字符串的翻转2. 判断字符串是不是回文串3. 单词大小写4. 字符串的拆分5. 字符串的合并6. 将元素进行重复7. 列表的拓展8
- 1.QLineEditQLineEdit.text()#输出str类型2.QCheckBoxQCheckBox.checkState()#状
- collections.namedtuple用于构造带字段名的元组。对应类型为typing.NamedTuple(可用作超类)。具名元组na
- 前言近来chatGPT挺火的,也试玩了一下,确实挺有意思。这里记录一下在Python中如何去使用chatGPT。本篇文章的实现100%基于
- 什么是爬虫爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源
- 设置模板路径在django项目下创建templats文件来存放html文件为了减少模板加载调用过程及模板本身的冗余代码,Django 提供了
- 本文实例为大家分享了python实现ANN的具体代码,供大家参考,具体内容如下1.简要介绍神经网络神经网络是具有适应性的简单单元组成的广泛并
- 使用iframe嵌入网页,页面可自适应在项目中遇到要嵌入第三方网页的需求,因为没有同第三方页面交互的需求,只需展示即可,所以最终决定使用 i
- Web性能优化最佳实践中最重要的一条是减少HTTP请求,它也是YSlow中比重最大的一条规则。减少HTTP请求的方案主要有合并JavaScr
- 备注: 关于label和tag,在中文中都翻译成标签,而下文中出现的标签,都是对label的翻译,比如”用户名”+输入框, 这里的”用户名”
- 具体代码如下所示:#coding:utf8import random,wxdef password(event): a = [c
- 1、基本用法# coding:utf-8import tkinter as tk# 创建窗口对象window = tk.Tk()# 设置串口
- 一、前言 🎈Beego Web框架应该是国内Go语言社区第一个框架,个人觉得十分适合新手入门Go Web。笔者半年前写过一篇搭建Beego项