《PHP编程最快明白》第六讲:Mysql数据库操作
程序员文章站
2022-06-08 22:09:45
答案就是做成一个类--数据库类就产生了。通过对函数的二次封装,实现了非常好的重用。要用的时候再include进去。 在讲php数据库之前,先介绍一下mysql要点:大家可以...
答案就是做成一个类--数据库类就产生了。通过对函数的二次封装,实现了非常好的重用。要用的时候再include进去。
在讲php数据库之前,先介绍一下mysql要点:大家可以用phpmyadmin学习数据库操作。
在phpmyadmin里看到编码这一项全部选中文utf-8就对了。
mysql数据库类型主要是: char(固定空间字符串,多大就是多少个中文字符)、varchar(可变空间字符串,多大就是初始化多少个中文字符)、int(整数多大就是多少位)、float(浮点数)、timestamp(日期,可选建立时自动创建,输出时就已经是格式化过的date)、text(文本)、bool(布尔型)
写sql语句时sum()可以统计值;order by 'id' desc limit 10,10等要活用。
在phpmyadmin学一下sql语句增删改查就行了。
实例20 mysql类
<?php
class opmysql{
private $host = 'localhost'; //服务器地址
private $name = 'root'; //登录账号
private $pwd = ''; //登录密码
private $dbase = 'a0606123620'; //数据库名称
private $conn = ''; //数据库链接资源
private $result = ''; //结果集
private $msg = ''; //返回结果
private $fields; //返回字段
private $fieldsnum = 0; //返回字段数
private $rowsnum = 0; //返回结果数
private $rowsrst = ''; //返回单条记录的字段数组
private $filesarray = array(); //返回字段数组
private $rowsarray = array(); //返回结果数组
private $idusername=array();
private $idsubtitle=array();
//初始化类
function __construct($host='',$name='',$pwd='',$dbase=''){
if($host != '')
$this->host = $host;
if($name != '')
$this->name = $name;
if($pwd != '')
$this->pwd = $pwd;
if($dbase != '')
$this->dbase = $dbase;
$this->init_conn();
}
//链接数据库
function init_conn(){
$this->conn=@mysql_connect($this->host,$this->name,$this->pwd);
@mysql_select_db($this->dbase,$this->conn);
mysql_query("set names utf8");
}
//查询结果
function mysql_query_rst($sql){
if($this->conn == ''){
$this->init_conn();
}
$this->result = @mysql_query($sql,$this->conn);
}
//取得查询结果字段数目
function getfieldsnum($sql){
$this->mysql_query_rst($sql);
$this->fieldsnum = @mysql_num_fields($this->result);
}
//取得查询结果行数目
function getrowsnum($sql){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
return @mysql_num_rows($this->result);
}else{
return '';
}
}
//取得记录数组有索引(单条记录)
function getrowsrst($sql){
$this->mysql_query_rst($sql);
if(mysql_error() == 0){
$this->rowsrst = mysql_fetch_array($this->result,mysql_assoc);
return $this->rowsrst;
}else{
return '';
}
}
//取得记录数组有索引(多条记录)全部
function getrowsarray($sql){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
while($row = mysql_fetch_array($this->result,mysql_assoc)) {
$this->rowsarray[] = $row;
}
return $this->rowsarray;
}else{
return '';
}
}
//更新、删除、添加记录数,返回影响到的行数
function uidrst($sql){
if($this->conn == ''){
$this->init_conn();
}
@mysql_query($sql);
$this->rowsnum = @mysql_affected_rows();
if(mysql_errno() == 0){
return $this->rowsnum;
}else{
return '';
}
}
//获取对应的字段值,一条数字索引,mysql_array_rows才是带字段索引
function getfields($sql,$fields){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
if(mysql_num_rows($this->result) > 0){
$tmpfld = @mysql_fetch_row($this->result);
$this->fields = $tmpfld[$fields];
}
return $this->fields;
}else{
return '';
}
}
//错误信息
function msg_error(){
if(mysql_errno() != 0) {
$this->msg = mysql_error();
}
return $this->msg;
}
//释放结果集
function close_rst(){
mysql_free_result($this->result);
$this->msg = '';
$this->fieldsnum = 0;
$this->rowsnum = 0;
$this->filesarray = '';
$this->rowsarray = '';
$this->idsubtitle='';
$this->idusername='';
}
//关闭数据库
function close_conn(){
$this->close_rst();
mysql_close($this->conn);
$this->conn = '';
}
}
?>
实例21 类的使用、密码的md5加密
<?php
$conne = new opmysql();
$conne-> getrowsarray($sql);
$conne-> close_conn();
$password=”123456一二三四五六”;
echo md5($password.”www.kuphp.com”);//输出为32位的密文,是没有解密函数的,可以实现简单的加密功能。
?>
在讲php数据库之前,先介绍一下mysql要点:大家可以用phpmyadmin学习数据库操作。
在phpmyadmin里看到编码这一项全部选中文utf-8就对了。
mysql数据库类型主要是: char(固定空间字符串,多大就是多少个中文字符)、varchar(可变空间字符串,多大就是初始化多少个中文字符)、int(整数多大就是多少位)、float(浮点数)、timestamp(日期,可选建立时自动创建,输出时就已经是格式化过的date)、text(文本)、bool(布尔型)
写sql语句时sum()可以统计值;order by 'id' desc limit 10,10等要活用。
在phpmyadmin学一下sql语句增删改查就行了。
实例20 mysql类
复制代码 代码如下:
<?php
class opmysql{
private $host = 'localhost'; //服务器地址
private $name = 'root'; //登录账号
private $pwd = ''; //登录密码
private $dbase = 'a0606123620'; //数据库名称
private $conn = ''; //数据库链接资源
private $result = ''; //结果集
private $msg = ''; //返回结果
private $fields; //返回字段
private $fieldsnum = 0; //返回字段数
private $rowsnum = 0; //返回结果数
private $rowsrst = ''; //返回单条记录的字段数组
private $filesarray = array(); //返回字段数组
private $rowsarray = array(); //返回结果数组
private $idusername=array();
private $idsubtitle=array();
//初始化类
function __construct($host='',$name='',$pwd='',$dbase=''){
if($host != '')
$this->host = $host;
if($name != '')
$this->name = $name;
if($pwd != '')
$this->pwd = $pwd;
if($dbase != '')
$this->dbase = $dbase;
$this->init_conn();
}
//链接数据库
function init_conn(){
$this->conn=@mysql_connect($this->host,$this->name,$this->pwd);
@mysql_select_db($this->dbase,$this->conn);
mysql_query("set names utf8");
}
//查询结果
function mysql_query_rst($sql){
if($this->conn == ''){
$this->init_conn();
}
$this->result = @mysql_query($sql,$this->conn);
}
//取得查询结果字段数目
function getfieldsnum($sql){
$this->mysql_query_rst($sql);
$this->fieldsnum = @mysql_num_fields($this->result);
}
//取得查询结果行数目
function getrowsnum($sql){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
return @mysql_num_rows($this->result);
}else{
return '';
}
}
//取得记录数组有索引(单条记录)
function getrowsrst($sql){
$this->mysql_query_rst($sql);
if(mysql_error() == 0){
$this->rowsrst = mysql_fetch_array($this->result,mysql_assoc);
return $this->rowsrst;
}else{
return '';
}
}
//取得记录数组有索引(多条记录)全部
function getrowsarray($sql){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
while($row = mysql_fetch_array($this->result,mysql_assoc)) {
$this->rowsarray[] = $row;
}
return $this->rowsarray;
}else{
return '';
}
}
//更新、删除、添加记录数,返回影响到的行数
function uidrst($sql){
if($this->conn == ''){
$this->init_conn();
}
@mysql_query($sql);
$this->rowsnum = @mysql_affected_rows();
if(mysql_errno() == 0){
return $this->rowsnum;
}else{
return '';
}
}
//获取对应的字段值,一条数字索引,mysql_array_rows才是带字段索引
function getfields($sql,$fields){
$this->mysql_query_rst($sql);
if(mysql_errno() == 0){
if(mysql_num_rows($this->result) > 0){
$tmpfld = @mysql_fetch_row($this->result);
$this->fields = $tmpfld[$fields];
}
return $this->fields;
}else{
return '';
}
}
//错误信息
function msg_error(){
if(mysql_errno() != 0) {
$this->msg = mysql_error();
}
return $this->msg;
}
//释放结果集
function close_rst(){
mysql_free_result($this->result);
$this->msg = '';
$this->fieldsnum = 0;
$this->rowsnum = 0;
$this->filesarray = '';
$this->rowsarray = '';
$this->idsubtitle='';
$this->idusername='';
}
//关闭数据库
function close_conn(){
$this->close_rst();
mysql_close($this->conn);
$this->conn = '';
}
}
?>
实例21 类的使用、密码的md5加密
复制代码 代码如下:
<?php
$conne = new opmysql();
$conne-> getrowsarray($sql);
$conne-> close_conn();
$password=”123456一二三四五六”;
echo md5($password.”www.kuphp.com”);//输出为32位的密文,是没有解密函数的,可以实现简单的加密功能。
?>
上一篇: arm架构64位优化
下一篇: arm架构32位优化