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+javascript液晶时钟
Oct 09 PHP
将一维或多维的数组连接成一个字符串的php代码
Aug 08 PHP
php数据库配置文件一般做法分享
Jul 07 PHP
php设计模式之单例模式使用示例
Jan 20 PHP
浅析php原型模式
Nov 25 PHP
Yii框架登录流程分析
Dec 03 PHP
CentOS安装php v8js教程
Feb 26 PHP
php实现的递归提成方案实例
Nov 14 PHP
PHP对象实例化单例方法
Jan 19 PHP
php实现的三个常用加密解密功能函数示例
Nov 06 PHP
解决laravel 表单提交-POST 异常的问题
Oct 15 PHP
PHP实现简单用户登录界面
Oct 23 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 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
学习php笔记 字符串处理
2010/10/19 PHP
php中判断文件空目录是否有读写权限的函数代码
2012/08/07 PHP
详解php几行代码实现CSV格式文件输出
2017/07/01 PHP
基于Laravel实现的用户动态模块开发
2017/09/21 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
jQuery实现可拖动的浮动层完整代码
2013/05/27 Javascript
php is_numberic函数造成的SQL注入漏洞
2014/03/10 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
javascript实现设置、获取和删除Cookie的方法
2015/06/01 Javascript
基于jQuery实现网页打印功能
2015/12/01 Javascript
jQuery基于函数重载实现自定义Alert函数样式的方法
2016/07/27 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
Centos7 中 Node.js安装简单方法
2016/11/02 Javascript
微信小程序中使元素占满整个屏幕高度实现方法
2016/12/14 Javascript
jQuery实现的浮动层div浏览器居中显示效果
2017/02/03 Javascript
微信小程序图片选择区域裁剪实现方法
2017/12/02 Javascript
JavaScript插入排序算法原理与实现方法示例
2018/08/06 Javascript
微信小程序开发常见问题及解决方案
2019/07/11 Javascript
详解JavaScript作用域、作用域链和闭包的用法
2020/09/03 Javascript
python使用psutil模块获取系统状态
2016/08/27 Python
对python中array.sum(axis=?)的用法介绍
2018/06/28 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
Python Collatz序列实现过程解析
2019/10/12 Python
Python3 实现减少可调用对象的参数个数
2019/12/20 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
计算机专业个人求职信范例
2013/09/23 职场文书
法院实习人员自我鉴定
2013/09/26 职场文书
办公室员工岗位工作职责
2014/03/10 职场文书
高中生操行评语大全
2014/04/25 职场文书
世界读书日的活动方案
2014/08/20 职场文书
幼儿园六一活动总结
2014/08/27 职场文书
学生上课看漫画的检讨书
2014/09/26 职场文书
2014年人事工作总结范文
2014/11/19 职场文书
8个JS的reduce使用实例和reduce操作方式
2021/10/05 Javascript