新手学PHP之数据库操作详解及乱码解决!


Posted in PHP onJanuary 02, 2007

很多朋友新学PHP也许在数据库方面会有点麻烦,尤其是MYSQL4.1.x以后会出现乱码问题。这里写个简单教程,希望对新手有点帮助。也许很多朋友之前是学ASP的(本人也是),有可能怀念ASP的set rs=adodb.recorset(我靠,太久没做ASP,后面的好像有点错,想不起来了!凑活着看吧!)然后就rs.open,rs.movenext...........可是PHPA是依靠很多数据库操作函数来控制,比如:mysql_connect();mysql_select_db();...........那如果页面多,难道要一个个的重复写这些函数???当然不用,现在给大家个数据库操作类,里面包含了大多数,数据库操作的方法,包含基本配置信息,以后大家需要调用数据库信息就直接包含这个页面就可以,下面给出代码及使用方法。
   首先需要两个页面1.config.inc.php代码: 
   

<?php         //数据库参数变量设定  
       //$dbhost:主机名  
       //$dbuser:连接帐户  
       //$dbpassword:连接密码  
       //$dbname:数据库名  
      //下面已我机子配置为例,  
      //请大家根据自己的数据库配置信息配置这个文件即可  
      //--------------------------------------------------------------------  
       $dbhost="localhost";  
       $dbuser="root";  
       $dbpassword="7529639";  
       $dbname="cr_download";  
      //--------------------------------------------------------------------  
   ?> 
另一个就是数据库操作类页面了dbclass.php
<?php  
//定义数据库操作类  
class db{  
       //类属性定义  
       var $dbhost="localhost";//MYSQL主机  
       var $dbuser="root";//连接帐户  
       var $password="";//连接密码  
       var $dbname="";//数据库名  
      //变量引用  
       function mysql($dbhost,$dbuser,$password,$dbname){  
           $this->dbhost=$dbhost;  
           $this->dbuser=$dbuser;  
           $this->password=$password;  
           $this->dbname=$dbname;  
       }  
    //创建MYSQL连接  
       function mycon(){  
        @mysql_connect($this->dbhost,$this->dbuser,$this->password);  
    }  
    //选择相应的数据库  
    function selectdb(){  
     @mysql_select_db($this->db);  
    }         //创建数据库连接并选择相应数据库  
       function createcon(){  
           mysql_connect($this->dbhost,$this->dbuser,$this->password);  
           mysql_query("SET NAMES 'GBK'");//这是解决乱码的关键哦,LINUX下改为UTF8  
           mysql_select_db($this->dbname);  
       }  
    //执行SQL语句,并返回结果集  
       function fetch_array($sql){  
           $result=mysql_query($sql);  
           return mysql_fetch_array($result);  
       }  
    //执行SQL语句  
    function query($sql){  
        return mysql_query($sql);  
    }  
    //取得结果集数组  
    function loop_query($result){  
        return mysql_fetch_array($result);  
    }  
    //关闭数据库连接  
    function close() {  
        return mysql_close();  
    }  
   }  
?> 

下面讲下用法:
如果一个页面要涉及数据库操作,请这样使用: 
<?php      include('inc/config.inc.php');//包含数据库基本配置信息  
    include('inc/dbclass.php');//包含数据库操作类  
   //以下以插入一条数据为例说明,其他操作用法相似  
   //-----------------------------------------------------------------------------------  
   $db=new db;//从数据库操作类生成实例,OOP还是好啊  
   $db->mysql($dbhost,$dbuser,$dbpassword,$dbname);//调用连接参数函数  
   $db->createcon();//调用创建连接函数  
   //-----------------------------------------------------------------------------------  
   //开始插入数据  
   //-----------------------------------------------------------------------------------  
   $addsql="insert into cr_userinfo values(0,'$username','$userpwd','$time',50,1,'$userquestion','$useranswer')";  
   $db->query($addsql);  
   echo"<img src=images/pass.gif> <font color=red>恭喜您,注册成功!请点击<a href=login.php>这里</a>登录!</font>";  
   $db->close();//关闭数据库连接   
?>

好了,看完这篇文章相信新手们可以很好的使用PHP对MYSQL进行基本的数据添加,删除等操作了,而且代码规范,易于维护。祝各位学习愉快,有不懂的就回帖留言,我会第一时间回复^_^。
PHP 相关文章推荐
文件上传的实现
Oct 09 PHP
一个PHP+MSSQL分页的例子
Oct 09 PHP
PHP实现MVC开发得最简单的方法――模型
Apr 10 PHP
php 学习资料零碎东西
Dec 04 PHP
php上传apk后自动提取apk包信息的使用(示例下载)
Apr 26 PHP
探讨PHP删除文件夹的三种方法
Jun 09 PHP
php 读取文件头判断文件类型的实现代码
Aug 05 PHP
一个经典实用的PHP图像处理类分享
Nov 18 PHP
php实现俄罗斯乘法实例
Mar 07 PHP
php mongodb操作类 带几个简单的例子
Aug 25 PHP
php出租房数据管理及搜索页面
May 23 PHP
php微信公众号开发之秒杀
Oct 20 PHP
默默小谈PHP&amp;MYSQL分页原理及实现
Jan 02 #PHP
默默简单的写了一个模板引擎
Jan 02 #PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 #PHP
PHP小技巧搜集,每个PHPer都来露一手
Jan 02 #PHP
实例(Smarty+FCKeditor新闻系统)
Jan 02 #PHP
PHP+JS无限级可伸缩菜单详解(简单易懂)
Jan 02 #PHP
PHP文件上传实例详解!!!
Jan 02 #PHP
You might like
PHP通用检测函数集合
2011/02/08 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
2014/06/05 PHP
PHP中把数据库查询结果输出为json格式简单实例
2015/04/09 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
PHP读取大文件末尾N行的高效方法推荐
2016/06/03 PHP
js过滤数组重复元素的方法
2010/09/05 Javascript
用JS判别浏览器种类以及IE版本的几种方法小结
2011/08/02 Javascript
javascript按位非运算符的使用方法
2013/11/14 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
vue 系列——vue2-webpack2框架搭建踩坑之路
2017/12/22 Javascript
微信小程序progress组件使用详解
2018/01/31 Javascript
layer.open弹层查看缩略图的原图,自适应大小的实例
2019/09/05 Javascript
JavaScript实现简单的弹窗效果
2020/05/19 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
python实现向ppt文件里插入新幻灯片页面的方法
2015/04/28 Python
python递归查询菜单并转换成json实例
2017/03/27 Python
python清除字符串中间空格的实例讲解
2018/05/11 Python
Python 防止死锁的方法
2020/07/29 Python
Python 使用双重循环打印图形菱形操作
2020/08/09 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
2020/10/20 Python
Python用access判断文件是否被占用的实例方法
2020/12/17 Python
史蒂夫·马登加拿大官网:Steve Madden加拿大
2017/11/18 全球购物
The North Face北面德国官网:美国著名户外品牌
2018/12/12 全球购物
澳大利亚头发和美容产品购物网站:OZ Hair & Beauty
2020/03/27 全球购物
缴纳养老保险的证明
2014/01/10 职场文书
网页美工求职信范文
2014/04/17 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
2015应届毕业生求职信范文
2015/03/20 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书
家访教师心得体会
2016/01/23 职场文书
导游词之云南-元阳梯田
2019/10/08 职场文书
Vue Element UI自定义描述列表组件
2021/05/18 Vue.js
spring 项目实现限流方法示例
2022/07/15 Java/Android