第11章 使用PHP从Web访问MySQL数据库
1.过滤用户可能值其搜索条件的起始或结束位置不小心输入的空白字符: 应用trim();
2.转义数据(第4章)函数:addslashes(),stripslashes(),get_magic_quotes_gpc();
3.在脚本中连接MySQL服务器:mysqli(…,…,…,…);
//面向对象的方法(实例化一个对象)
@ $db=new mysqli(‘localhost’,’bookorama’,’bookorama123’,’books’);
//面向过程的方式
@ $db=mysqli_connect(‘localhost’,’bookorama’,’bookorama123’,’books’);
//测试连接的结果的函数:mysqli_connect_errno()
4.从Web连接数据库:
mysqli_select_db(db_resource, db_name);
或 $db->select_db(dbname);
5\.查询数据库:
$result=$db->query($query); //面向对象版本
$result=mysqli_query($db,$query); //面向过程版本
6.返回记录行的行数:
$num_results=$result->num_rows; //面向对象版本
$num_results=mysqli_num_rows($result); //面向过程版本
7.
①获取集合中某一行并以一个相关数组返回该行:
$row=$result->fetch_assoc(); //面向对象版本
$row=mysqli_fetch_assoc($assoc); //面向过程版本
然后通过$row[‘title’],$row[‘author’]等来访问每个属性;
②获取一行并取回到一个对象中:
$row=$result->fetch_object(); 或 $row=mysqli_fetch_object($result);
然后通过$row->title,$row->author等来访问每个属性;
8.从数据库断开连接:
①释放结果集: $result->free(); 或 mysqli_free_result($result);
②关闭与数据库的连接:$db->close(); 或 mysqli_close($db);
9.prepared语句:
①查询速度更快,可免受sQL注射风格的攻击;
②基本思想:向MySQL发送一个需要执行的查询模板,然后再单独发送数据;
如: 【INSERT插入操作:用prepare绑定参数】
$query=”insert into books values(?,?,?,?)”; //查询模板
$stmt=$db->prepare($query); //构建需要用来完成实际处理的资源
$stmt->bind_param(“sssd”,$isbn,$author,$title,$price);
//bind_param()告诉PHP哪些变量应该被问号所替换
//第一个参数(这里是”sssd”)是一个格式化字符串
//sssd:所传递的四个参数分别是字符串、字符串、字符串、双精度
//s:字符串 d:双精度 i:整数 b:blob
//过程版本中是mysqli_stmt_bind_param()
$stmt->execute(); //调用execute()函数时才真正运行此查询
//过程版本中是mysqli_stmt_execute()
【SELECT选择操作:用prepare绑定结果】
$stmt->bind_result($isbn,$author,$title,$price); //提供希望填充结果列的变量列表
//mysqli_stmt_bind_result()
$stmt->execute();
//然后在循环中调用如下语句:
$stmt->fetch(); //fetch()将获得依次获得一个结果行,并填充到绑定变量中
第11章 使用PHP从Web访问MySQL数据库的更多相关文章
- 使用PHP从web访问mysql数据库
一. web数据库构架的工作原理 1. 用户由浏览器发出HTTP请求,请求特定的web页面. 2. web服务器接受接收到对特定页面的请求,检索相应文件,并将其传递给php引擎处理. 3. php引擎 ...
- 对C#中的web访问mysql数据库的一些知识点进行了整理归纳总结
基本对比 使用方式 使用场合 优缺点 是否需要安装 需要的dll网址 引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置 ...
- C# web访问mysql数据库-整理归纳总结
基本对比 使用方式 使用场合 优缺点 是否需要安装 需要的dll网址 引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置 ...
- android开发 如何通过web服务器访问MYSQL数据库并且使其数据同步到android SQLite数据库?
通过web服务器访问MYSQL数据库有以下几个过程: 1.在MySql下创建自己的数据库和自己的表单 2.连接数据库. 3.访问数据库 1.创建web工程 (服务器端) 在Myeclipse下新建一个 ...
- 基于gin的golang web开发:访问mysql数据库
web开发基本都离不开访问数据库,在Gin中使用mysql数据库需要依赖mysql的驱动.直接使用驱动提供的API就要写很多样板代码.你可以找到很多扩展包这里介绍的是jmoiron/sqlx.另外还有 ...
- Linux下C++访问MySQL数据库
由于想要开始了解并学习用LAMP进行web开发,所以昨晚我在Fedora上安装了MySQL,学习了MySQL的几个常用命令.想着在学习进行web开发(PHP访问数据库)之前,先用我熟悉的C++连接数据 ...
- C#连接、访问MySQL数据库
一.准备工具 visual stuido(本示例使用visual studio 2010) MySql.Data.dll mysql_installer_community_V5.6.21.1_set ...
- Spring Boot入门(六):使用MyBatis访问MySql数据库(注解方式)
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 本篇博客我们讲解下在Spring Boot中使用MyBatis访问MySql数据库的简单用法. 1.前期 ...
- 关于.Net使用企业库访问MySql数据库
关于.Net使用企业库访问MySql数据库 在网上看了很多又重写又加WebConfig中的内容,其实不用那么麻烦 企业库5.0访问MySql数据库只需要在Web服务器安装mysql-connector ...
随机推荐
- 关于FragmentManager动态管理Fragment时Fragment生命周期的探究
Fragment是Android中的重要组件,在Android 3.0的时候添加进来. 关于Fragment的生命周期,我相信了解过的开发人员都应该把以下方法脱口而出:onAttach, onCrea ...
- Ninject的项目情况
Ninject的项目情况 首先,它有很多的项目组成,适合不同的环境,当然它有几个基本的核心库. 为什么它会有这么多的库呢?因为轻量级,易于使用和被扩展是它的目标,代码越是少,你使用代码的可能性越高嘛. ...
- Attribute Routing
Attribute Routing 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 题外话:由于这个技术点是新学的,并不属于原系列,但借助了原系列 ...
- Jquery框架
现在Jquery框架对于开发人员基本上是无人不知,无人不晓了,用起来十分的方便,特别是选择器十分强大,提高了我们的开发速度.但是好多人也只是停留在了会用的基础上,我个人觉得会用一个框架不算什么,只能说 ...
- Xcode中如何集成Unity
项目中需要集成unity,摸索了大半周,碰到了很多坑,终于搞定. 我的方法是,通过unity导出一个空的iOS项目,然后再新建一个Xcode项目,针对配置页面一一对应.直到配置完全一样,然后倒入相关资 ...
- [Usaco2008 Dec]Hay For Sale 购买干草[01背包水题]
Description 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草. 顿因有H(1≤H≤5000)包 ...
- [google面试CTCI] 1-8.判断子字符串
[字符串与数组] Q:Assume you have a method isSubstring which checks if one word is a substring of another G ...
- .NET面向对象特性之多态
.NET面向对象特性之多态 前言 上一篇总结了面向对象三大特性之一的继承,再接再厉,这一章继续总结多态.同时把继承中涉及到多态的内容进一步补充扩展.可以说“继承”是多态的根基.但继承主要关注的是“共通 ...
- 重载 C 函数
在 clang 的扩展下,可以重载 C 函数,例如重载 sin 函数: float __attribute__((overloadable)) sin(float x) { return sinf(x ...
- Javascript:看 Javascript 规范,学 this 引用,你会懂的。
目录 背景this待分析程序先看一个语言规范方法调用备注 背景返回目录 Javascript 的 this 是我的心病,多数情况下知道其运行结果,个别变态的场景下,就给不出解释了,昨天一次偶然的机遇让 ...