php操作Mysql 以及封装常用的函数 用外连接连接3个表的案例
<?php
header("content-type;text/html;charset=utf-8");
//数据库连接
define('DB_HOST','localhost');
define('DB_USER','root');
define('DB_PASSWORD','admin');
define('DB_NAME','php2016');
//连接mysql服务器
function _connect(){
//global 表示全局变量的意思,意图是将此变量在函数外部也能访问
global $_conn;
if (!$_conn=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD)){
echo '连接mysql服务器失败';
echo '错误编号:',mysql_errno(),'<br />';
echo '错误信息:',mysql_error(),'<br />';
}
}
//连接指定数据库
function _select_db(){
if (!mysql_select_db(DB_NAME)){
echo '找不到指定的数据库';
echo '错误编号:',mysql_errno(),'<br />';
echo '错误信息:',mysql_error(),'<br />';
}
}
//设置字符集
function _set_names(){
if (!mysql_query('SET NAMES UTF8')){
echo '字符集设置失败';
echo '错误编号:',mysql_errno(),'<br />';
echo '错误信息:',mysql_error(),'<br />';
}
}
//执行SQL语句,返回一个结果集 $_sql 意思是 一条SQL语句
function _query($_sql){
if (!$_result=mysql_query($_sql)){
exit('SQL执行失败');
}
return $_result;
}
// _query($_sql) 是结果集
/*
* _fetch_array只能获取指定数据集的一条数据组
*/
function _fetch_array($_sql){
return mysql_fetch_array(_query($_sql),MYSQL_ASSOC);
}
/*
* _fetch_array_list 可以返回指定数据集的所有数据
*/
function _fetch_array_list($_result){
return mysql_fetch_array($_result,MYSQL_ASSOC);
}
/*
* _html()函数表示对字符串进行html过滤显示,如是数组,按数组方式显示,如是字符串,按字符串方式显示
*/
function _html($_string){
if (is_array($_string)){
foreach ($_string as $_key =>$_value){
$_string[$_key]=htmlspecialchars($_value);
}
}else {
$_string=htmlspecialchars($_string);
}
return $_string;
}
//初始化数据库
_connect(); //连接mysql服务器
_select_db(); //连接指定数据库
_set_names(); //设置字符集
$sql = "select goods.id,goods.name as goods_name,colors.name as colors_name,size.name as size_name from goods left join colors on goods.id=colors.id left join size on goods.id=size.id;";
$res =_query($sql);
$_html=array();
while (!!$_rows=_fetch_array_list($res)){
$_html['id']=$_rows['id'];
$_html['goods_name']=$_rows['goods_name'];
$_html['colors_name']=$_rows['colors_name'];
$_html['size_name']=$_rows['size_name'];
$_html=_html($_html);
echo $_html['id'];echo $_html['goods_name']; echo $_html['colors_name'];echo $_html['size_name'].'<br />';
}
?>
php操作Mysql 以及封装常用的函数 用外连接连接3个表的案例的更多相关文章
- LightMysql:为方便操作MySQL而封装的Python类
原文链接:http://www.danfengcao.info/python/2015/12/26/lightweight-python-mysql-class.html mysqldb是Python ...
- MySqL触发器以及常用转换函数注意事项
1,触发器(http://www.cnblogs.com/zzwlovegfj/archive/2012/07/04/2576989.html) 1.MYSQL中触发器中不能对本表进行 i ...
- mysql学习笔记—常用sql函数
SQL 拥有很多可用于计数和计算的内建函数. SQL Aggregate 函数 SQL Aggregate 函数计算从列中取得的值,返回一个单一的值. 有用的 Aggregate 函数: AVG() ...
- MySQL 排名统计(常用功能函数)
select actor_id,@curr_cnt:=cnt as cnt , ,@rank) as rank, @prev_cnt:=@curr_cnt as dummy from( select ...
- MySQL的一些常用sql函数(持续更新。。)
1. 字符串拼接函数 :CONCAT(str1,str2,...) SELECT CONCAT('AAA','BBB') STR; //AAABBB 2. 判断是否为null,为null就指定另外一个 ...
- php操作mysql几个常用操作
1.链接数据库 mysql_connet('数据库地址','数据库账号','数据库密码'); 2.选择数据库 mysql_select_db("数据库名"); 3.设置编码 mys ...
- php最全基础,数组,函数,超全局变量,时间,回话,文件,php操作mysql
共享一份学习php最全基础语法知识的笔记 原文链接:http://www.cnblogs.com/oscn/p/3607757.html:略有修改 http://www.cnblogs.com/l ...
- MySQL之MySQL常用的函数方法
MySQL常用函数 本篇主要总结了一些在使用MySQL数据库中常用的函数,本篇大部分都是以实例作为讲解,如果有什么建议或者意见欢迎前来打扰. limit Select * from table ord ...
- CentOS系统操作mysql的常用命令
MySQL名字的来历MySQL是一个小型关系型数据库管理系统,MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了 ...
随机推荐
- UESTC 1307 windy数(数位DP)
题目链接 这其实入门题,不过,我写了好一会,还是一直wa,图样... #include <iostream> #include <cstdio> #include <cs ...
- dubbo源码学习(一)之ExtensionLoader
[转载请注明作者和原文链接,欢迎讨论,相互学习.] 一.前言 ExtensionLoader类,主要是根据扩展点名称来对扩展点接口实现进行的一系列操作,如果获取扩展点接口实现实例.适配类实例.更新实现 ...
- 转:DataGridView列的宽度、行的高度自动调整
注意:DataGridView控件是从.NET Framework 2.0版本开始追加的. 介绍一下DataGridView列的宽度和行的高度,根据单元格或Header的内容(一般是内容全部被表示)自 ...
- 史上最全的Win8快捷键大全
下列的 Win8 快捷键列表汇总均收集自网络,未全部实测,也有可能有Win7时代的热键混迹其中,不管怎样,如有错漏,欢迎大家指正! Win8 常用快捷键: Win键 可在开始屏幕主菜单及最后一个应用程 ...
- js原型对象与Java类的比较
在我学习Javascript的原型对象时,我总是不自觉地拿Java的类思想来做比较,时间久了,我渐渐认识到二者有巨大的不同. 首先,类是不能直接当方法来运行,它最简便的方式是调用其静态方法:而原型对象 ...
- html5语义标签
- set的用法
set提供一个不重复元素的集合,一般不能直接修改元素.因为这样可能会造成重复元素因此必须删除旧元素,再插入新元素.看下面程序:分析每句的功能.#include<set>#include&l ...
- Rocky4.2下安装达梦(DM)6数据库
1.准备操作系统 1.1 系统登录界面 1.2 操作系统版本信息 jdbh:~ # uname -ra Linux jdbh -x86_64 # SMP Fri Dec :: CST x86_64 G ...
- 使用RMAN备份数据库
1.1使用控制文件备份全库 1.1.1配置备份路径 1.1.2 RMAN备份全库 1.2使用catalog数据库备份全库 1.2.1配置到远程数据库的TNS 1.2.2创建表空间及设置用户 1.2.3 ...
- EF框架中加子类后出现列名 'Discriminator' 无效问题