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 批量删除 sql语句
Jun 05 PHP
备份mysql数据库的php代码(一个表一个文件)
May 28 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
Jun 20 PHP
php中运用http调用的GET和POST方法示例
Sep 29 PHP
php画图实例
Nov 05 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
Feb 10 PHP
php对关联数组循环遍历的实现方法
Mar 13 PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
php中实现进程锁与多进程的方法
Sep 18 PHP
浅析PHP类的反射来实现依赖注入过程
Feb 06 PHP
PHP批斗大会之缺失的异常详解
Jul 09 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 disk_free_space 返回目录可用空间
2010/05/10 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
2018/07/30 PHP
JavaScript 无符号右移赋值操作
2009/04/17 Javascript
理解Javascript_15_作用域分配与变量访问规则,再送个闭包
2010/10/20 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
jquery通过a标签删除table中的一行的代码
2013/12/02 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
使用forever管理nodejs应用教程
2014/06/03 NodeJs
javascript基本包装类型介绍
2015/04/10 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
2020/03/26 Javascript
又一款js时钟!transform实现时钟效果
2016/08/15 Javascript
js获取当前时间(昨天、今天、明天)
2016/11/23 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
jQuery中元素选择器(element)简单用法示例
2018/05/14 jQuery
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
在微信小程序中使用vant的方法
2019/06/07 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
python cookielib 登录人人网的实现代码
2012/12/19 Python
在windows下Python打印彩色字体的方法
2018/05/15 Python
python简易远程控制单线程版
2018/06/20 Python
Python实现base64编码的图片保存到本地功能示例
2018/06/22 Python
Django模板标签{% for %}循环,获取制定条数据实例
2020/05/14 Python
使用pyplot.matshow()函数添加绘图标题
2020/06/16 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
Python远程linux执行命令实现
2020/11/11 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
解决pytorch 的state_dict()拷贝问题
2021/03/03 Python
Contém1g官网:巴西彩妆品牌
2020/01/17 全球购物
报关员个人职业生涯规划书
2014/03/12 职场文书
培训讲师岗位职责
2014/04/13 职场文书
大学生个人年度总结范文
2015/02/15 职场文书
创业计划书之面包店
2019/09/17 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
浅谈JavaScript作用域
2021/12/06 Javascript