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上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了 ...
随机推荐
- Linux下多进程编程之exec函数语法及使用实例
exec函数族 1)exec函数族说明 fork()函数用于创建一个子进程,该子进程几乎复制了父进程的全部内容,但是,这个新创建的进程如何执行呢?exec函数族就提供了一个在进程中启动另一个程序执行的 ...
- java enum(枚举)使用详解 + 总结
enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性,存放在 java.lang 包中. 下面是我在使用 enum 过程中的一些经验和总结,主要包括如下内容: 1. 原始 ...
- [LintCode] Flatten Nested List Iterator 压平嵌套链表迭代器
Given a nested list of integers, implement an iterator to flatten it. Each element is either an inte ...
- [CareerCup] 15.4 Types of Join 各种交
15.4 What are the different types of joins? Please explain how they differ and why certain types are ...
- jdbc模拟电话本。
1 项目描述 该项目是用于日常生活中记录联系人信息的一款小工具. 实现了对联系人的姓名.年龄.性别.电话号码.住址的添加及修改.查找.删除.排序等功能.该项目是以windows控制台为运行平台,所有的 ...
- Hbuider 同步github
别人的教程,仅作收藏. http://blog.csdn.net/u011871921/article/details/44238971
- Linux关闭休眠和屏保模式
本人因为特殊需求,想让某台Linux主机始终显示某个程序,显示器不能关机或者休眠或进入屏保模式. 环境:Ubuntu 11.10 最小化模式安装并安装有轻量级桌面openbox(非gnome).因为X ...
- css渐变颜色在线制作
http://www.colorzilla.com/gradient-editor/
- EDI - Biztalk Sample
1. EDI Control - Scripting Usage:
- 【iCore3 双核心板】例程二十五:LAN_DNS实验——域名解析
实验指导书及代码包下载: http://pan.baidu.com/s/1jHlBpqe iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...