解析在PHP中使用mysqli扩展库对mysql的操作


Posted in PHP onJuly 03, 2013

1、在PHP中 使用mysqli扩展库对mysql 的dql操作

<?php
    header("Content-type: text/html;charset=utf-8");
    //mysqli操作mysql数据库(面向对象方式)
    //1、创建MySQLi对象
    $mysqli =new MySQLi("localhost","root","root","test");
    if($mysqli->connect_error){
        die("连接失败".$mysqli->connect_error);
    }
    //2、操作数据库(发送sql)
    $sql="select *from user1";
    //3、处理结果
    $res =$mysqli->query($sql);
    //var_dump($res);
    //fetch_assoc \fetch_array \fetch_object
    while($row=$res->fetch_row()){
        var_dump($row);
/*        foreach($row as $val){
            echo '--'.$val;
        }
        echo '<br/>';*/
    }
    //4、关闭资源
    $res->free();
    $mysqli->close();
?>

下面是面向过程的
<?php
    header("Content-type: text/html;charset=utf-8");    $mysqli=mysqli_connect("localhost","root","root","test");
    if(!$mysqli){
        die("连接失败".mysqli_connect_error());
    }
    $sql="select *from user1";
    $res=mysqli_query($mysqli,$sql);
    //var_dump($res);
    while($row=mysqli_fetch_row($res)){
        foreach ($row as $val){
            echo '-'.$val;
        }
        echo '<br/>';
    }
    //释放内存
    mysqli_free_result($res);
    mysqli_close($mysqli);
?>

2、在PHP中 使用mysqli扩展库对mysql 的dml操作
<?php    //使用mysqli 扩展库对mysql的crud 操作
    header("Content-type: text/html;charset=utf-8");
    $mysqli = new MySQLi("localhost","root","root","test");
    if($mysqli->connect_error){
        die("连接失败".$mysql->connect_error);
    }
    //增加一条记录
    //$sql="insert into user1 (name,password,email,age) values ('lucy',md5('lucy'),'lucy@163.com',17)";
    //删除一条记录
    //$sql="delete from user1 where id =80";
    //更新一条记录
    $sql="update user1 set age=20 where id=7";
    $res=$mysqli->query($sql);
    if(!$res){
        echo "操作失败".$mysqli->error;
    }else{
        if($mysqli->affected_rows>0){
            echo "成功";
        }else{
            echo "没有行受影响";    
        }
    }
    //关闭资源
    $mysqli->close();
?>

3、进行封装
<?
    class SqlHelper{        private $mysqli;
        //这里先写死,以后写死的东西用一个文件来配置
        private static $host="localhost";
        private static $user="root";
        private static $pwd="root";
        private static $db="test";
        public function __construct(){
            $this->mysqli=new MySQLi(self::$host,self::$user,self::$pwd,self::$db);
            if($this->mysqli->connect_error){
                die("连接失败".$this->mysqli->connect_error);
            }
            //设置字符集
            $this->mysqli->query("set names utf8");
        }
        //dql operate
        function execute_dql($sql){
            $res =$this->mysqli->query($sql) or die($this->mysqli->error);
            return $res;        
        }
        //dml operate
        function execute_dml($sql){
            $res =$this->mysqli->query($sql) or die($this->mysqli->error);
            if(!$res){
                return 0;//失败
            }else{
                if($this->mysqli->affected_rows>0){
                    return 1;//成功
                }else{
                    return 2;//没有行到影响
                }
            }
        }
    }
?>
PHP 相关文章推荐
dede3.1分页文字采集过滤规则详说(图文教程)
Apr 03 PHP
PHP 简单数组排序实现代码
Aug 05 PHP
php 正则表达式小结
Aug 31 PHP
PHP把网页保存为word文件的三种方法
Apr 01 PHP
php使用百度天气接口示例
Apr 22 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
Apr 08 PHP
PHP封装的数据库保存session功能类
Jul 11 PHP
PHP addcslashes()函数讲解
Feb 03 PHP
Laravel5.7框架安装与使用学习笔记图文详解
Apr 02 PHP
Laravel 框架返回状态拦截代码
Oct 18 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
Apr 14 PHP
PHP 文件编程综合案例-文件上传的实现
Jul 03 #PHP
Smarty foreach控制循环次数的实现详解
Jul 03 #PHP
浅析PHP绘图技术
Jul 03 #PHP
php修改NetBeans默认字体的大小
Jul 02 #PHP
PHP删除数组中特定元素的两种方法
Jul 02 #PHP
浅析php过滤html字符串,防止SQL注入的方法
Jul 02 #PHP
服务器变量 $_SERVER 的深入解析
Jul 02 #PHP
You might like
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
php使用ftp远程上传文件类(完美解决主从文件同步问题的方法)
2016/09/23 PHP
php json中文编码为null的解决办法
2016/12/14 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
JavaScript中Math对象使用说明
2008/01/16 Javascript
jQuery操作select下拉框的text值和value值的方法
2014/05/31 Javascript
Bootstrap框架下下拉框select搜索功能
2020/03/26 Javascript
jQuery Easyui使用(二)之可折叠面板动态加载无效果的解决方法
2016/08/17 Javascript
Ubuntu 16.04 64位中搭建Node.js开发环境教程
2016/10/19 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
JavaScript输出所选择起始与结束日期的方法
2017/07/12 Javascript
es6系列教程_ Map详解以及常用api介绍
2017/09/25 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
vue-router路由模式详解(小结)
2019/08/26 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
JavaScript this指向相关原理及实例解析
2020/07/10 Javascript
详解ES6 扩展运算符的使用与注意事项
2020/11/12 Javascript
Python中类的定义、继承及使用对象实例详解
2015/04/30 Python
python列表操作之extend和append的区别实例分析
2015/07/28 Python
python检测空间储存剩余大小和指定文件夹内存占用的实例
2018/06/11 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
2020/02/24 Python
如何使用python记录室友的抖音在线时间
2020/06/29 Python
python脚本和网页有何区别
2020/07/02 Python
python 读取、写入txt文件的示例
2020/09/27 Python
eBay加拿大站:eBay.ca
2019/06/20 全球购物
美国购买隐形眼镜网站:Lenses For Less
2020/07/05 全球购物
保护环境倡议书范文
2014/05/13 职场文书
2014法院干警廉洁警示教育思想汇报
2014/09/13 职场文书
工作时间擅自离岗检讨书
2014/10/24 职场文书
大国崛起观后感
2015/06/02 职场文书
杨善洲电影观后感
2015/06/04 职场文书
当你找不到方向的时候,不妨读读刘备的一生
2019/08/05 职场文书
Nginx快速入门教程
2021/03/31 Servers
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL
springboot layui hutool Excel导入的实现
2022/03/31 Java/Android