数据库操作工具类SqlHelper

所属栏目:建站技术 更新时间:2020-10-30 点击: 文章来源:https://www.sznest.net/jzjs/3545.html

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);
        }
    }
}

相关阅读

正则表达式收集汇总

搜索:empty(($)tr[&#39;([a-z]{1,})&#39;]),可以查找这样的empty($tr[&#39;digest&#39;]),然后可以替换成!$digest替换:!$1$2匹配A标签的超连接的正则表式如下$pattern=&quot;/&lt;a[^&gt;]+?href=[&quot;&#39;]?([^&quot;&#39;]+)…

了解详情 >>

手机访问电脑网时自动跳转代码

4G降临,移动网站已经一发不可收拾,pc端和移动端官网并存。如何让别人访问你的pc端的官网直接跳转到移动端的网站呢?各位看官,小二上代码!来了!varurl=window.location.href;varurl_match=/vit=1$/i;if(!url.match(url_match)){if(navigator.userAgent.match(/(…

了解详情 >>

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

为了服务器的网络安全,避免因为超大文件导致服务器故障,所以对文件上传的大小限制是很有必要的,但是有些客户又有上传大文件的需求,比如上传pdf或者压缩包这种格式的文件,那么碰到这种情况下,如何解决这个问题呢?在浏览器输出phpinfo();查看LoadedConfigurationFile这个参数可以获取php.info的文件位置1:如果上传的文件太大,会导致…

了解详情 >>

专业的人干专业的事,切莫用exit来干输出的事

专业的人干专业的&quot;事&quot;,切莫用exit来干输出的事在程序测试的过程中为了图片方便经常少写一行echo的代码来运行查看某个变量,在绝大部分的情况下我们传的都是非整数类型的变量,比如字符串等,所以在这样的情况下用exit来输出变量的值是能看到输出结果的,但是如果是整数类型的情况就不一样了,下面通过几个实验来说明一下这个问题第一个实验实参直接是…

了解详情 >>

ueditor与umeditor编辑器的各浏览器的问题汇总

ueditor的[1.4.3.3PHP版本]UTF-8版的存在的问题1:当编辑器还没有来得及提示“本地保存成功”的就提交表单的话,那么将无法获取编辑器中的内容2:当同一个脚本中有两个UE编辑器时,如果复制一段纯文字到编辑器中,被复制的文字的第一行只显示下面的部分,上面的一部分被隐藏起来,这个现象至少在火狐43.01版本一直到47.02这些版本是至少存在的,火…

了解详情 >>

过滤html标签与标签之间的空格以及标签和内容之间的空格

&lt;?phpob_start();?&gt;&lt;pid=&quot;name&quot;&gt;与左边的右尖括号有一个空格喔与右边的左尖括号有两个空格喔&lt;/a&gt;&lt;p&gt;与左边的右尖括号有三个空格喔&lt;/a&gt;&lt;p&gt;只与右边的左尖括号有四空格喔&lt;/a&gt;&lt;p&gt;两边没有空格但是中间有空格喔&…

了解详情 >>

Copyright @ 2008-2019   www.sznest.net   All rights reserved  网巢网是一家专业为企业提供免费建站、自助建站的模板建站公司     友情链接:香港张元洪律师行   

微信

移动端

客服

顶部