学习PHP时的一些总结(五)
mysql中启用事务的数据表类型建议使用InnoDB
利用PHP代码调用mysql中的事务过程:
1>关闭自动提交过程
$mysqli->autocommit(0);
2>执行sql语句
3> 执行成功时提交事务
$mysqli->commit()
否则,回滚事务 $mysqli->rollback();
4>处理完成后开启自动提交模式
$mysqli->autocommit(1);
MVC的设计模式
和PDO相关的一些参数和方法的使用:
PDO支持的另一种的占位符绑定的方法:
例子:
$query="Insert into contactInfo (name,address,phone) values (:name,:address,:phone)";
$stmt=$dbh->prepare($query);
$name="zhangsan";
$adress="xian";
$phone=1231321;
$stmt->bindParam(':name',$name);
$stmt->bindParam(':address',$adress);
$stmt->bindParam(':phone',$phone);
PDO中对大数据的存取操作实例:
将数据插入数据库
$dbh=new PDO("mysql:dbname=testdb;host=localhost","root","123456");
$stmt=$dbh->prepare("insert into images(contenttype,imagdata) values (?,?)");
$fp=fopen($_FILES["file"]["tmp_name"],"rb");
$stmt->bindParam(1,$_FILES['file']['type']);
$stmt->bindParam(2,$fp,PDO_PARAM_LOB);
$stmt->execute()
从数据库取图片文件:
$dbh=new PDO("mysql:dbname=testdb;host=localhost","root","123456");
$stmt=$dbh->prepare("select contenttype, imagedata from images where id=?");
$stmt->execute(array($_GET["id"]));
list($type,$lob)=$stmt->fetch();
header("content-Type:$type");
fpssthru($lob); //将给定的文件指针从当前的位置读取到 EOF 并把结果写到输出缓冲区。
学习PHP时的一些总结(五)的更多相关文章
- 上四条只是我目前总结菜鸟们在学习FPGA时所最容易跑偏的地
长期以来很多新入群的菜鸟们总 是在重复的问一些非常简单但是又让新手困惑不解的问题.作为管理员经常要给这些菜鸟们普及基础知识,但是非常不幸的是很多菜鸟怀着一种浮躁的心态来学习 FPGA,总是急于求成. ...
- 浅谈学习C++时用到的【封装继承多态】三个概念
封装继承多态这三个概念不是C++特有的,而是所有OOP具有的特性. 由于C++语言支持这三个特性,所以学习C++时不可避免的要理解这些概念. 而在大部分C++教材中这些概念是作为铺垫,接下来就花大部分 ...
- 在学习泛型时遇到的困惑经常与func<T,U>混淆
在学习泛型时遇到的困惑经常与func<T,U>混淆,总认为最后一个值是返回类型.现在区分一下,原来问题出在泛型委托上. C#委托的介绍(delegate.Action.Func.predi ...
- 学习servlet时出现的一些问题
此篇用来记录学习servlet时遇到的一些问题,谨防以后再犯. 问题1.导入的web项目,servlet中导入的包名报错. (1)缺少相关包,推荐一个网站下载jar包很方便http://mvnrepo ...
- JVM学习-运行时数据区域
目录 前言 运行时数据区 程序计数器 Java虚拟机栈 局部变量表 基础数据类型 对象引用 returnAddress 操作数栈 动态链接 方法返回地址 Java堆 方法区 类型信息 字段描述符 方法 ...
- 【学习总结】Git学习-参考廖雪峰老师教程五-远程仓库
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- OpenGL学习进程(7)第五课:点、边和图形(二)边
本节是OpenGL学习的第五个课时,下面介绍OpenGL边的相关知识: (1)边的概念: 数学上的直线没有宽度,但OpenGL的直线则是有宽度的.同时,OpenGL的直线必须是有限长度,而不是像数学概 ...
- 学习WebFlux时常见的问题
前言 只有光头才能变强. 文本已收录至我的GitHub精选文章,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾一下上篇我对WebFlux的入门,如果没读过 ...
- 新手学习Python时常见的错误
最近学习Python,现在把一些常见的错误总结如下: 1)忘记在 if , elif , else , for , while , class ,def 声明末尾添加 :(导致 "Synta ...
随机推荐
- hdu 2955 Robberies
Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- servlet规范
Servlet规范 一个最基本的 Java Web 项目所需的 jar 包只需要一个 servlet-api.jar ,这个 jar 包中的类大部分都是接口,还有一些工具类,共有 2 个包,分别是 j ...
- CSS中的块级元素与行级元素
最近初学CSS时对块级元素与行级元素有时会产生混淆,写篇博客记录一下自己对其的理解. 先从概念上来看: 块级元素 特点:1.每个块级元素都是独自占一行,其后的元素也只能另起一行,并不能两个元素共用一行 ...
- Oracle 参数化更新数据时报错:Oracle ORA-01722: 无效数字
报错:Oracle ORA-01722: 无效数字 看了一篇博客,据说是参数与列名不能一致,改过之后还是报一样的错误:Oracle ORA-01722: 无效数字 ,后来试了一下,不是参数名必须不一样 ...
- Oracle函数面试题
1.对字符串操作的函数? 答:ASCII() –函数返回字符表达式最左端字符的ASCII 码值 CHR() –函数用于将ASCII 码转换为字符 –如果没有输入0 ~ 255 之间的ASCII 码值C ...
- <转>SpringMVC与Struts2 比较总结
原链接:http://blog.csdn.net/chenleixing/article/details/44570681 个人整理: 1.级别不同:SpringMVC :方法 Struts是 类级 ...
- 利用CryptoStream进行加密解密
public class DBSecurity { //sKey sIV这两个自己随意设定,不能外泄 private const string sKey = "11,22,33,43,34, ...
- 给定金额m和红包数量n
这一题如果是采用暴力手段,不一定能获得正确答案,而且也非常耗时. 所以下面我们采用一个小技巧,也就是先产生n-1个红包,总得sum<m的,这样最后只要添加一个sum-m的红包钱数就可以了. 具体 ...
- MyEclipse整合Git
1. 在OSC@China申请账号,建立项目 2. MyEclipse中选择导入项目-->Git-->Projects from Git 3. 填入Git的地址.User Name和Pas ...
- mysql登陆报错(ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2))
部署mysql版本信息 version: 5.6.21 具体现象: mysql服务能够正常启动如下: [root@localhost ~]# service mysqld restart Shutti ...