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 相关文章推荐
站长助手-网站web在线管理程序 v1.0 下载
May 12 PHP
PHP stream_context_create()作用和用法分析
Mar 29 PHP
php 中英文语言转换类
Sep 07 PHP
PHP explode()函数用法、切分字符串
Oct 03 PHP
php启用zlib压缩文件的配置方法
Jun 12 PHP
简单实用的网站PHP缓存类实例
Jul 18 PHP
php显示指定目录下子目录的方法
Mar 20 PHP
又拍云异步上传实例教程详解
Apr 19 PHP
php parse_str() 函数的定义和用法
May 23 PHP
Yii 2.0如何使用页面缓存方法示例
May 23 PHP
php中html_entity_decode实现HTML实体转义
Jun 13 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 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
深思 PHP 数组遍历的差异(array_diff 的实现)
2008/03/23 PHP
深入解析PHP内存管理之谁动了我的内存
2013/06/20 PHP
php自动载入类用法实例分析
2016/06/24 PHP
php  单例模式详细介绍及实现源码
2016/11/05 PHP
php使用自定义函数实现汉字分割替换功能示例
2017/01/30 PHP
thinkphp分页集成实例
2017/07/24 PHP
JavaScript Event学习第二章 Event浏览器兼容性
2010/02/07 Javascript
javascript getElementsByClassName函数
2010/04/01 Javascript
JavaScript 浏览器验证代码(来自discuz)
2010/07/17 Javascript
一个支持任意尺寸的图片上下左右滑动效果
2014/08/24 Javascript
原生JavaScript+LESS实现瀑布流
2014/12/12 Javascript
JS点击某个图标或按钮弹出文件选择框的实现代码
2016/09/27 Javascript
jQuery.Validate表单验证插件的使用示例详解
2017/01/04 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
angular基于ng-alain定义自己的select组件示例
2018/02/23 Javascript
koa上传excel文件并解析的实现方法
2018/08/09 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
JS实现简易留言板增删功能
2020/02/08 Javascript
如何在JavaScript中使用localStorage详情
2021/02/04 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
[01:51]2014DOTA2西雅图邀请赛 MVP 外卡赛black场间采访
2014/07/09 DOTA
浅析Python中的多条件排序实现
2016/06/07 Python
Python3实现购物车功能
2018/04/18 Python
PyCharm安装第三方库如Requests的图文教程
2018/05/18 Python
解决Pycharm后台indexing导致不能run的问题
2019/06/27 Python
python通过opencv实现图片裁剪原理解析
2020/01/19 Python
Python中私有属性的定义方式
2020/03/05 Python
美国最大点评网站:Yelp
2018/02/14 全球购物
Microsoft Advertising美国:微软搜索广告
2019/05/01 全球购物
德国前卫设计师时装在线商店:Luxury Loft
2019/11/04 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
Linux Interview Questions For software testers
2013/05/17 面试题
生产主管岗位职责
2013/11/10 职场文书
新教师岗前培训方案
2014/06/05 职场文书
运动会广播稿诗歌版
2014/09/12 职场文书
篮球比赛通讯稿
2015/07/18 职场文书