数据库操作工具类SqlHelper

所属栏目:建站技术 发布时间:2020-10-30 点击: 文章来源:https://www.sznest.net/html/list2show.php?id=3545

class SqlHelper
{
    public $conn;
    public $host="localhost";
    public $username="root";
    public $password="root";
    public $dbname="mydb";
    
    public function __construct(){
        $this->conn=mysql_connect($this->host,$this->username,$this->password);
        if(!$this->conn)
        {
            die("链接失败".mysql_error());
        }
        mysql_select_db($this->dbname,$this->conn);
        mysql_query("set names utf8");
        
    }
    //返回单条记录
    public function execute_dql_one($sql)
    {
        $res=mysql_query($sql,$this->conn) or die("execute_dql".mysql_error());
        $row=mysql_fetch_row($res);
        $one=$row[0];
        mysql_free_result($res);
        return $one;
    }
    //返回单行记录
    public function execute_dql_single_line($sql)
    {
        $res=mysql_query($sql,$this->conn) or die("execute_dql".mysql_error());
        return mysql_fetch_assoc($res);
    }
    //返回多行记录
    public function execute_dql_multi_line($sql)
    {
        $arr=array();
        $res=mysql_query($sql,$this->conn) or die(mysql_error());
        while (!!$row=mysql_fetch_assoc($res))
        {
            $arr[]=$row;
        }
        mysql_free_result($res);
        return $arr;
    }
    
    public function execute_dml($sql)
    {
        $b=mysql_query($sql,$this->conn) or die(mysql_error());
        if(!$b){
            return 0;
        }else{
            if(mysql_affected_rows($this->conn)>0){
                return 1;//表示执行OK
            }else{
                return 2;//表示没有行受到影响
            }
        }
        
    }
    //sql1:select * from 表名 limit 0,6
    //sql2:select count(id) from 表名
    public function execute_dql_fenye($tableName,$fenyePage)
    {
        $sql1="select count(*) from ".$tableName;
        $res=mysql_query($sql1,$this->conn) or die(mysql_error());
        $row=mysql_fetch_row($res);
        $fenyePage->rowCount=$row[0];
        mysql_free_result($res);
        
        $fenyePage->pageCount=ceil($fenyePage->rowCount/$fenyePage->pageSize);
        if(!empty($fenyePage->pageNow))
        {
            if (is_numeric($fenyePage->pageNow))
            {
                if($fenyePage->pageNow<1)
                {
                    $fenyePage->pageNow=1;
                }
                if($fenyePage->pageNow>$fenyePage->pageCount)
                {
                    $fenyePage->pageNow=$fenyePage->pageCount;
                }
                
            }else{
                $fenyePage->pageNow=1;
            }
        }else{
            $fenyePage->pageNow=1;    
        }
        $sql2="select * from ".$tableName." order by id limit ".$fenyePage->pageSize*($fenyePage->pageNow-1).",".$fenyePage->pageSize;
        
        $res=mysql_query($sql2,$this->conn) or die(mysql_error());
        $arr=array();
        while (!!$row=mysql_fetch_assoc($res))
        {
            $arr[]=$row;
        }
        $fenyePage->res_array=$arr;
        
        $fenyePage->navigate.="当前页码$fenyePage->pageNow/$fenyePage->pageCount,总共有{$fenyePage->rowCount}条,每页显示{$fenyePage->pageSize}条
";
        
        if($fenyePage->pageNow>1){
            $prePage=$fenyePage->pageNow-1;
            $fenyePage->navigate.="上一页";
            
        }
        if($fenyePage->pageNow<$fenyepage->pageCount){
            $nextPage=$fenyePage->pageNow+1;
            $fenyePage->navigate.="下一页";
        }
        $start=floor(($fenyePage->pageNow-1)/$fenyePage->page_whole)*$fenyePage->page_whole+1;
        $Index=$start;
        //向前整体翻页
        /*if ($start>$fenyePage->page_whole){
            $fenyePage->pageNow_pre=$start-$fenyePage->page_whole;
            echo " <<   ";
        }*/
        
        if($fenyePage->pageNow>$fenyePage->page_whole)
        {
            $fenyePage->navigate.=" <<   ";
        }
        
        //整体翻页
        for($start=$Index;$start<$index+$fenyepage->page_whole;$start++)
        {
            if($start<=$fenyepage->pageCount)
            {
                $fenyePage->navigate.="$start  ";
            }
            
        }
        //向后整体翻页
        if($start<=$fenyepage->pageCount)
        {
            $fenyePage->navigate.=" >> 
";
        }
        mysql_free_result($res);
        //mysql_close($this->conn);
            
    }
    
    public function close_connect(){
        if(!empty($this->conn)){
            mysql_close($this->conn);
        }
    }
}

相关阅读

纯CSS无表达式实现未知尺寸图…

在制作网页的时候,常常会遇到一种情况,我们需要把一些未知尺寸的图片放在一个固定宽高的容器中,这时候我…

了解详情 >>

删除bom标签或者bom头的p…

有时程序的逻辑代码完全没有一问题,但是就是运行的时候出错,如果出现这种情况,那么有可能就是文件中包含…

了解详情 >>

如何让你的PHP网站变得更安全

安全配置一(1)打开php的安全模式php的安全模式是个非常重要的内嵌的安全机制,能够控制一些php…

了解详情 >>

如何解决网站上传大文件的问题?

为了服务器的网络安全,避免因为超大文件导致服务器故障,所以对文件上传的大小限制是很有必要的,但是有些…

了解详情 >>

360浏览器header的Lo…

在百度里搜索这个问题的答案,有的说是BOM头导致的问题,有的点是因为之前有输出语句导致的问题,有的话…

了解详情 >>

如何解决QQ显示未启用的问题

没设置临时会话,一般都会出现下面的状况。QQ放在网站上作为客服,必须设置临时会话。或者点击之后,要求…

了解详情 >>

Copyright @ 2008-2019   www.sznest.net   All rights reserved  专注于免费建站,自助建站,模板建站,选免费模板免费送香港空间,选收费模板先建站后付款   粤ICP备11083046号       

微信

移动端

客服

顶部