解析在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 相关文章推荐
用Flash图形化数据(一)
Oct 09 PHP
PHP的autoload自动加载机制使用说明
Dec 28 PHP
jQuery 源码分析笔记
May 25 PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 PHP
php数组函数序列之in_array() 查找数组值是否存在
Oct 29 PHP
PHP截断标题且兼容utf8和gb2312编码
Sep 22 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
PHP实现动态柱状图改进版
Mar 30 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
php文件类型MIME对照表(比较全)
Oct 07 PHP
Laravel框架基于中间件实现禁止未登录用户访问页面功能示例
Jan 17 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
Zend公司全球首推PHP认证
2006/10/09 PHP
PHP 压缩文件夹的类代码
2009/11/05 PHP
解析crontab php自动运行的方法
2013/06/24 PHP
php 生成自动创建文件夹并上传文件的示例代码
2014/03/07 PHP
PHP模拟asp中response类实现方法
2015/08/08 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
javascript vvorld 在线加密破解方法
2008/11/13 Javascript
JavaScript 事件参考手册
2008/12/24 Javascript
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
JS随机漂浮广告代码具体实例
2013/11/19 Javascript
jQuery动画出现连续触发、滞后反复执行的解决方法
2015/01/28 Javascript
JavaScript运算符小结
2015/06/03 Javascript
JS对象序列化成json数据和json数据转化为JS对象的代码
2017/08/23 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
vue-cli脚手架引入弹出层layer插件的几种方法
2019/06/24 Javascript
vue.js 打包时出现空白页和路径错误问题及解决方法
2019/06/26 Javascript
使用layer弹窗,制作编辑User信息页面的方法
2019/09/27 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
Python下载指定页面上图片的方法
2016/05/12 Python
python爬虫实战之爬取京东商城实例教程
2017/04/24 Python
python编写朴素贝叶斯用于文本分类
2017/12/21 Python
PyCharm安装Markdown插件的两种方法
2019/06/24 Python
python安装读取grib库总结(推荐)
2020/06/24 Python
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
求∏的近似值,直到最后一项的绝对值小于指定的数
2016/02/12 面试题
公务员个人自我评价分享
2013/11/06 职场文书
致跳高运动员广播稿
2014/01/13 职场文书
房屋租赁合同解除协议书
2014/10/11 职场文书
超市工作总结范文2014
2014/12/19 职场文书
三峡大坝导游词
2015/01/31 职场文书
开学典礼校长致辞
2015/07/29 职场文书
pandas进行数据输入和输出的方法详解
2022/03/23 Python
MySQL使用IF语句及用case语句对条件并结果进行判断 
2022/09/23 MySQL