<?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个表的案例的更多相关文章

  1. LightMysql:为方便操作MySQL而封装的Python类

    原文链接:http://www.danfengcao.info/python/2015/12/26/lightweight-python-mysql-class.html mysqldb是Python ...

  2. MySqL触发器以及常用转换函数注意事项

    1,触发器(http://www.cnblogs.com/zzwlovegfj/archive/2012/07/04/2576989.html)       1.MYSQL中触发器中不能对本表进行 i ...

  3. mysql学习笔记—常用sql函数

    SQL 拥有很多可用于计数和计算的内建函数. SQL Aggregate 函数 SQL Aggregate 函数计算从列中取得的值,返回一个单一的值. 有用的 Aggregate 函数: AVG() ...

  4. MySQL 排名统计(常用功能函数)

    select actor_id,@curr_cnt:=cnt as cnt , ,@rank) as rank, @prev_cnt:=@curr_cnt as dummy from( select ...

  5. MySQL的一些常用sql函数(持续更新。。)

    1. 字符串拼接函数 :CONCAT(str1,str2,...) SELECT CONCAT('AAA','BBB') STR; //AAABBB 2. 判断是否为null,为null就指定另外一个 ...

  6. php操作mysql几个常用操作

    1.链接数据库 mysql_connet('数据库地址','数据库账号','数据库密码'); 2.选择数据库 mysql_select_db("数据库名"); 3.设置编码 mys ...

  7. php最全基础,数组,函数,超全局变量,时间,回话,文件,php操作mysql

    共享一份学习php最全基础语法知识的笔记 原文链接:http://www.cnblogs.com/oscn/p/3607757.html:略有修改   http://www.cnblogs.com/l ...

  8. MySQL之MySQL常用的函数方法

    MySQL常用函数 本篇主要总结了一些在使用MySQL数据库中常用的函数,本篇大部分都是以实例作为讲解,如果有什么建议或者意见欢迎前来打扰. limit Select * from table ord ...

  9. CentOS系统操作mysql的常用命令

    MySQL名字的来历MySQL是一个小型关系型数据库管理系统,MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了 ...

随机推荐

  1. BZOJ3759: Hungergame 博弈论+线性基

    学了新的忘了旧的,还活着干什么 题意:一些盒子,每步可选择打开盒子和取出已打开盒子的任意多石子,问先手是否必胜 搬运po姐的题解: 先手必胜的状态为:给出的数字集合存在一个异或和为零的非空子集,则先手 ...

  2. selenium grid中的多个线程同步执行

    需求:有一个工作流,每一步审批都需要多个领导参与,才能推流程到下一步去 代码思考:多个领导在自己的线程中运行,速度有的快有的慢,如何保证下一步的领导审批时,这个步骤已经激活 如下是代码:思路为:如果这 ...

  3. JQuery插件让图片旋转任意角度且代码极其简单

    引入下方的jquery.rotate.js文件,然后通过$("选择器").rotate(角度);可以旋转任意角度, 例如$("#rotate-image").r ...

  4. iOS 程序员 6 级考试(答案和解释)

    iOS 程序员 6 级考试(答案和解释)   我是前言 1. 下面的代码分别输出什么? @implementation Son : Father- (id)init { self = [super i ...

  5. SurfaceView的简单使用

    package com.example.administrator.mystudent.surfaceView; import android.content.Context; import andr ...

  6. winform连接ACCESS数据库

    1.先建立一个名叫text.mdb的access数据库 2.他它复制到access中文件下. 3.在App_Code文件夹下建好封装语句,查询方法,连接语句,其中studentDA中的代码为: pri ...

  7. Hibernate的性能优化问题笔记

    性能优化 1.注意session.clear()的运用.尤其是不断分页循环的情况下. a)在一个大集合中进行遍历,遍历取出数据或者对象 b)java会引起内存泄漏吗?在语法上是不可能出现内存泄露的,因 ...

  8. javascript平时小例子③(setInterval使用1)

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  9. DEDECMS里面DEDE函数解析

    下面来解说下DEDECMS织梦CMS模板里面的函数说明 在文件include/inc_function.php里面 GetCurUrl() 获贴切前的脚本的URL GetAlabNum($str) 把 ...

  10. BizTalk动手实验(八)消息路由

    1 课程简介 通过本课程熟悉BizTalk消息由的机制 2 准备工作 1. 熟悉XML.XML Schema.XSLT等相关XML开发技术 2. 新建BizTalk空项目 3 演示 3.1 动态消息路 ...