一个比较常用的关于php下的mysql数据操作类

<?php
/*************************************************************
MySql类封装:
首先连接数据库,需要有参数
参数如何传?
    1、可以用配置文件
    2、可以通过构造函数传参
**************************************************************/
class SqlHelper{
    private $host;
    private $user;
    private $pwd;
    private $dbName;
    private $charset;
    private $conn = null; //保存连接资源

    public function __construct(){
        $this->host  = 'localhost';
        $this->user = 'xuwm';
        $this->pwd = 'bW7LA2pMDAEtnVB7';
        $this->dbName = 'gamejj';
        $this->charset='utf8';
        //连接
        $this->connect($this->host, $this->user, $this->pwd);
        //选库
        $this->switchDb($this->dbName);
        //设置字符集
        $this->setChar($this->charset);
    }

    //负责连接
    private function connect($host, $user, $pwd){
        $conn = mysql_connect($host, $user, $pwd);
         if (!$conn) {
            echo "Unable to connect to DB: " . mysql_error();
            exit;
        }
        $this->conn = $conn;
    }

    //选库
    public function switchDb($db){
        $sql = 'use ' . $db; //注意user 和 ' 有一个空格
        $this->query($sql);
    }

    //设置字符集
    public function setChar($char){
        $sql = 'set names ' . $char;
        $this->query($sql);
    }

    //关闭连接
    public function close(){
        mysql_close($this->conn);
    }

    //负责发送sql查询
    public  function query($sql){
        $result = mysql_query($sql, $this->conn);
        return $result;
    }

    //获取多行多列的select结果
    public function getAll($sql){
        $list  = array();
        $result = $this->query($sql);
        if(!$result)
            return false;
        while($row= mysql_fetch_assoc($result)){
            $list[] = $row;
        }
        return $list;
    }

    //获取一行数据 常用于 聚合函数
    public function getRow($sql){
        $result = $this->query($sql);
        if(!$result)
            return false;
        $row= mysql_fetch_assoc($result);
        return $row;
    }

     //获取一个值
    public function getOne($sql){
        $result = $this->query($sql);
        if(!$result)
            return false;
        $row= mysql_fetch_row($result);
        return $row[0];
    }

}

//$mysql = new SqlHelper();
/*
var_dump($mysql);
$sql = "insert goods values(1121, 4, '苹果')";
$mysql->query($sql);

$sql = 'select * from goods';
$list = $mysql->getAll($sql);
var_dump($list);

$sql = 'select * from goods where goods_id=4';
$list = $mysql->getRow($sql);
var_dump($list);

$sql = 'select count(*) from goods';
$list = $mysql->getOne($sql);
var_dump($list);
*/


时间: 2024-09-14 02:02:16

一个比较常用的关于php下的mysql数据操作类的相关文章

从一个不错的留言本弄的mysql数据库操作类_php技巧

从一个不错的留言本弄的mysql数据库操作类,初学php的朋友可以参考下 复制代码 代码如下: <?php class mysql{     var $querynum = 0;     function connect($dbhost, $dbuser, $dbpw, $dbname = '',$dbcharset='') {         if(!@mysql_connect($dbhost, $dbuser, $dbpw)) {             $this->show('Can

一个.net下通用的Cookie操作类

笔者曾经参与一个大型多用户商城的开发,系统用户角色很多,有买家,卖家,代理商,系统管理员 ,普通管理员,超级管理员等,这些用户都涉及到登陆系统,然后建立cookies的问题,由于角色的不同 ,这些用户登陆系统后,所建的cookies都相对独立,而且对一个多用户商城来说,cookies区分域很重要 ,不同的域名要建不同的域.因此笔者在开发的过程中,写了很多次的建cookies,取cookies的代码,不 胜其烦! 既然都是建cookies,那么肯定有共同点,我们何不抽象出来,写一个通用的Cooki

Linux下实现MySQL数据备份和恢复的命令使用全攻略_Mysql

为了保障数据的安全,需要定期对数据进行备份.备份的方式有很多种,效果也不一样.一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复.从而将损失降到最低.下面我们来了解一下MySQL常见的有三种备份恢复方式: 1.利用Mysqldump+二进制日志实现备份 2.利用LVM快照+二进制日志实现备份 3.使用Xtrabackup备份 一:实验环境介绍: 系统介绍:CentOS6.4_X64 数据库版本:mysql-5.5.33 二:基于Mysqldump命令实现备份恢复 2.1.思路概念

ASP.NET技巧:一些常用的数据操作类

asp.net|技巧|数据 偶也不知道算不算,反正我自己随时写的用,很粗浅的,适合跟我一样的新手收藏,指不定就用得上呢! 一组是我这两天写留言本的,另组是以前VS2003写投票用的 高手看见的话,麻烦把好的解决方案说下,谢谢哦!!新手的话,共同学习了!! --------下面是我最近写个留言本用的------------    public static OleDbConnection con()    {//数据库连接类        OleDbConnection con = new Ole

ASP.NET的一个简单的数据操作类

asp.net|数据 我现在还不会写持久层,就用这种方法加上存储过程用,我感觉还比较爽,希望大家多多指教public class clsdb{     public clsdb() {  //  // TODO: 在此处添加构造函数逻辑  // }//数据库连接    public static SqlConnection getcn()    {        return (new SqlConnection("server=.;database=web;uid=sa;pwd=123&quo

php下mysql数据库操作类(改自discuz)_php技巧

复制代码 代码如下: <?php /* -------------------------------- System:PT book - PT小说小偷 Code: 杰少Pakey ----------------------------------- */ $pt_mysql = new dbQuery; /** * mysql查询类 * */ class dbQuery { /** * 查询总次数 * * @var int */ var $querynum = 0; /** * 连接句柄 *

一个简单的php mysql数据库操作类程序

数据库操作类代码  代码如下 复制代码 <?php if(!defined('AHBB_VOTE') || AHBB_VOTE !='zhu_'){  die('非法调用'); }  class mysql  {   private $conn;   function __construct($host,$user,$pwd,$database,$charset){    $this->mysql($host,$user,$pwd,$database,$charset);   }   func

unix-Solaris 10 写一个脚本,在atc用户下,调用该脚本,执行poweroff命令

问题描述 Solaris 10 写一个脚本,在atc用户下,调用该脚本,执行poweroff命令 Solaris 10 写一个脚本,在atc用户下,调用该脚本,执行poweroff命令 解决方案 实现一个脚本,然后atc用户执行 解决方案二: 实现一个脚本,然后atc用户执行

Fieldset 一个不常用的HTML标签

fieldset是一个不常用的HTML标签,很有意思,其语法如下: <fieldset> <legend>fieldset名称</legend> <!-- 加入你的内容 --> </fieldset> 在IE中,如果不加css,fieldset的效果是圆角的,但加了css后就变成方角的了. 在Firefox中的效果都为方角. 示例如下: 以下是代码片段:<fieldset><legend>本站公告</legend&g