php中bind_param()函数用法分析


Posted in PHP onMarch 28, 2017

本文实例讲述了php中bind_param()函数用法。分享给大家供大家参考,具体如下:

从字面上不难理解,绑定的参数;下面我通过一个绑定参数的例子讲一下:

for example:

bind_param("sss", firstname,lastname, $email);

1. 该函数绑定了 SQL 的参数,且告诉数据库参数的值。 "sss" 参数列处理其余参数的数据类型。s 字符告诉数据库该参数为字符串。

参数有以下四种类型:

i - integer(整型)
d - double(双精度浮点型)
s - string(字符串)
b - BLOB(布尔值)

每个参数都需要指定类型。

通过告诉数据库参数的数据类型,可以降低 SQL 注入的风险。

2. 上面的firstname,lastname, $email传的是引用,在php5.3之后是不能直接写成字符串的,为了验证这个结论,在此我写了一段测试,如下:

$servername="localhost";
$username="root";
$password="admin";
$dbname="test";
$conn=new mysqli($servername,$username,$password,$dbname);
if($conn->connect_error){
 die("connected failed:".$conn->connect_error);
}
$sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("sss","xiao","hong",22);
$stmt->execute();
echo "News records created successfully!";
$stmt->close();
$conn->close();

上面我写了一段将参数直接写成字符串的测试程序,运行之后弹出:

php中bind_param()函数用法分析

最后我将程序改写为如下:

$servername="localhost";
$username="root";
$password="password";
$dbname="test";
$conn=new mysqli($servername,$username,$password,$dbname);
if($conn->connect_error){
   die("Connect failed:".$conn->connect_error);
}
$sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("sss",$user_first,$user_last,$age);
$user_first="xiao";
$user_last="hong";
$age=12;
$stmt->execute();
echo "News records created successfully!";
$stmt->close();
$conn->close();

而上面这段程序可以正常执行.

PS:这里再为大家提供一个相关的php函数表供大家查询参考:

php在线函数参考表:
http://tools.3water.com/table/php_fun_table

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP HTML代码串截取代码
Dec 29 PHP
PHP用mysql数据库存储session的代码
Mar 05 PHP
php 冒泡排序 交换排序法
May 10 PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
Jun 05 PHP
ThinkPHP的模版中调用session数据的方法
Jul 01 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
May 13 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 PHP
PHP钩子实现方法解析
May 21 PHP
laravel 时间格式转时间戳的例子
Oct 11 PHP
PHP程序员简单的开展服务治理架构操作详解(三)
May 14 PHP
解决Laravel使用验证时跳转到首页的问题
Nov 17 PHP
php实现基于PDO的预处理示例
Mar 28 #PHP
php中str_pad()函数用法分析
Mar 28 #PHP
PHP获取当前日期及本周一是几月几号的方法
Mar 28 #PHP
Redis构建分布式锁
Mar 28 #PHP
谈谈从phpinfo中能获取哪些值得注意的信息
Mar 28 #PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 #PHP
php中Redis的应用--消息传递
Mar 28 #PHP
You might like
最贵的咖啡是怎么产生的,它的风味怎么样?
2021/03/04 新手入门
PHP中$_SERVER的详细参数与说明介绍
2013/10/26 PHP
使用php批量删除数据库下所有前缀为prefix_的表
2014/06/09 PHP
javascript 一个函数对同一元素的多个事件响应
2009/07/25 Javascript
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
javascript 跨浏览器开发经验总结(五) js 事件
2010/05/19 Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
2013/12/31 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
js使用removeChild方法动态删除div元素
2014/08/01 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
后台获取ZTREE选中节点的方法
2015/02/12 Javascript
JavaScript点击按钮后弹出透明浮动层的方法
2015/05/11 Javascript
详细总结Javascript中的焦点管理
2016/09/17 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
在vue项目中使用sass语法问题
2019/07/18 Javascript
Vue中通过vue-router实现命名视图的问题
2020/04/23 Javascript
手机浏览器唤起微信分享(JS)
2020/10/11 Javascript
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
Python下载懒人图库JavaScript特效
2015/05/28 Python
windows10系统中安装python3.x+scrapy教程
2016/11/08 Python
python连接、操作mongodb数据库的方法实例详解
2019/09/11 Python
解决Python发送Http请求时,中文乱码的问题
2020/04/30 Python
手把手教你将Flask应用封装成Docker服务的实现
2020/08/19 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
详解HTML5 canvas绘图基本使用方法
2018/01/29 HTML / CSS
JD Sports澳洲官网:英国领先的运动鞋和运动时尚零售商
2020/02/15 全球购物
用Java语言将一个键盘输入的数字转化成中文输出
2013/01/25 面试题
Java程序员常见面试题
2015/07/16 面试题
公司经理聘任书
2014/03/29 职场文书
理财计划书
2014/08/14 职场文书
学校会议通知范文
2015/04/15 职场文书