解析在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 相关文章推荐
php 数组的合并、拆分、区别取值函数集
Feb 15 PHP
谷歌音乐搜索栏的提示功能php修正代码
May 09 PHP
深入PHP magic quotes的详解
Jun 17 PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 PHP
Server.HTMLEncode让代码在页面里显示为源代码
Dec 08 PHP
PHP针对JSON操作实例分析
Jan 12 PHP
Linux操作系统安装LAMP环境
Jun 26 PHP
Yii控制器中操作视图js的方法
Jul 04 PHP
浅谈php fopen下载远程文件的函数
Nov 18 PHP
thinkPHP多表查询及分页功能实现方法示例
Jul 03 PHP
php数组和链表的区别总结
Sep 20 PHP
PHP 超级全局变量相关总结
Jun 30 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
PHP伪静态页面函数附使用方法
2008/06/20 PHP
把1316这个数表示成两个数的和,其中一个为13的倍数,另一个是11的倍数,求这两个数。
2011/06/24 PHP
PHP漏洞全解(详细介绍)
2012/11/13 PHP
PHP实现长文章分页实例代码(附源码)
2016/02/03 PHP
2017年最新PHP经典面试题目汇总(上篇)
2017/03/17 PHP
为数据添加append,remove功能
2006/10/03 Javascript
JQuery Ajax通过Handler访问外部XML数据的代码
2010/06/01 Javascript
JavaScript 小型打飞机游戏实现原理说明
2010/10/28 Javascript
Extjs中ComboBox加载并赋初值的实现方法
2012/03/22 Javascript
JS之Date对象和获取系统当前时间详解
2014/01/13 Javascript
浅谈jQuery为哪般去掉了浏览器检测
2016/08/29 Javascript
JavaScript轮播图简单制作方法
2017/02/20 Javascript
node实现定时发送邮件的示例代码
2017/08/26 Javascript
Node.js实现连接mysql数据库功能示例
2017/09/15 Javascript
JS表单传值和URL编码转换
2018/03/03 Javascript
vue渲染时闪烁{{}}的问题及解决方法
2018/03/28 Javascript
浅谈vue项目打包优化策略
2018/09/29 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
Python开发实例分享bt种子爬虫程序和种子解析
2014/05/21 Python
python使用Image处理图片常用技巧分析
2015/06/01 Python
Python的爬虫程序编写框架Scrapy入门学习教程
2016/07/02 Python
Python决策树分类算法学习
2017/12/22 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
2019/07/11 Python
python实现图片插入文字
2019/11/26 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
浅谈HTML5中dialog元素尝鲜
2018/10/15 HTML / CSS
西雅图的买手店:Totokaelo
2019/10/19 全球购物
韩国乐天网上商城:Lotte iMall
2021/02/03 全球购物
const和static readonly区别
2013/05/20 面试题
小学生暑假感言
2014/02/06 职场文书
社区服务活动小结
2014/07/08 职场文书
村主任个人对照检查材料
2014/10/01 职场文书
公积金接收函格式
2015/01/30 职场文书
2015暑假假期总结
2015/07/13 职场文书
vue @ ~ 相对路径 路径别名设置方式
2022/06/05 Vue.js