PHP SQLSRV:sqlsrv_query() 是否可以正确地准备 select 语句?

2024-07-04

TL:DR

Does sqlsrv_query()做同样的工作select陈述比sqlsrv_prepare() and sqlsrv_execute()关于准备好的陈述,做什么?

我怎样才能做一个安全的select陈述?

一点历史

我是 PHP 开发方面的新手,我有一个旧的(非 OO)PHP 应用程序来维护和重构所有这些意大利面条代码。事实上,我做了一个存储库和一个服务抽象,将一些面向对象的内容放在项目中的一个单独区域中,而不会扰乱当今正在运行的内容。

考虑到未来的 PDO 包含,我进行了此抽象。今天我只是逐步重构代码。 Doctrine 和其他 ORM 不是今天的选择(不幸的是,项目经理的决定......不是我的错)。

嗯,我们正在使用sqlsrv驱动程序在这里,我已经了解了如何准备和执行一个语句insert or update运营。问题是:我怎样才能准备一个select执行语句(帮助防止一阶注入攻击),类似地我也这样做sqlsrv_prepare() and sqlsrv_execute()?

配置:PHP 5.3、Sql Server。

先感谢您!


他们是不同的。

http://php.net/manual/en/function.sqlsrv-prepare.php http://php.net/manual/en/function.sqlsrv-prepare.php

准备执行查询

http://php.net/manual/en/function.sqlsrv-query.php http://php.net/manual/en/function.sqlsrv-query.php

准备并执行查询.

在准备好的语句中,您分别发送查询和参数。因此,您需要两个单独的调用(sqlsrv_执行 http://php.net/manual/en/function.sqlsrv-execute.php提供该二人组的另一端)。

sqlsrv_query()只需发送 SQL 即可立即执行。它不支持准备好的语句,因此您必须内联包含经过净化的数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP SQLSRV:sqlsrv_query() 是否可以正确地准备 select 语句? 的相关文章

  • 如何将路径附加到 .htaccess 中的 PHP include_path

    目前在我的网站上我使用的语句如下 include head php include head php include head php 取决于我有多少嵌套文件夹 我确信有更好的方法来做到这一点 我相信 htaccess是解决方案 但我不确定
  • Laravel 自定义验证消息参数

    我正在使用 Laravel 5 1 我有一个 Summernotejs 表单元素 我已经成功创建了一个自定义验证规则 该规则获取从表单输入提供的 HTML 剥离标签 然后执行strlen 调用文本内容 因此我可以看到消息的长度 其中没有任何
  • Cron 调度程序 CakePHP 2.0

    我正在使用 CakePHP 2 0 并一直在尝试设置一个 cronjob 来执行控制器中的方法 我一直在疯狂地浏览各种教程和随机网站 看看是否能找到解决方案 我收到的错误是这样的 Undefined variable argc APP we
  • PHP 插入数组值、表名

    我正在努力处理 PHP 插入语句 我希望它通过使用将数据插入数据库array keys values and array values values 我试图弄清楚如何做到这一点 到目前为止 我的插入中已包含此代码 并且还包含了我的索引页 我
  • 如何通过 AngularJS 使用 SOAP WebService?

    好吧 我有一个 SOAP WebService 通常供 PHP 客户端使用 工作完美 通过 ajax 消费这个 php 并填充我的模板 我当前的应用程序执行以下过程Angular lt gt PHP lt gt service wsdl 我
  • 用于 Eclipse 的 PHP 混乱检测器

    我安装了 PTI Eclipse 插件 有改变的可能PDepend CodeSniffer and UnitTest 当我尝试右键单击任何文件时 我会看到Mess Detector选项也是如此 但当我单击它时什么也没有发生 在搜索了所有配置
  • Cakephp:如何将值传递到 JavaScript 文件中?

    我有一些 javascript 包含在视图中 并且我在此线程中使用了 inkedmn 的方法 将页面特定的 javascript 添加到 cakephp 中的每个视图 https stackoverflow com questions 14
  • TSQL 时间序列模式数据挖掘

    获取一个包含以下 3 个字段的 SQL 表 Id TimeStamp Item UserId 我想确定最常见的序列Item for a UserId在一次会议中 会话将简单地由时间阈值来定义 即 如果 X 分钟内没有完整的条目 则任何未来的
  • 在提交之前合并 $_GET 变量[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我不太确定这是否可能 但这是我无法弄
  • 调整大小然后裁剪 PHP

    好的 基本上我希望所有图像都是 170x170px 的正方形 因此 如果图像不是正方形 我希望调整它的大小 然后在中间裁剪 我花了很多时间玩这个 但一无所获 我已经让它裁剪较大图像的一部分等 但我特别需要调整图像大小 然后裁剪 任何帮助将不
  • 通过 AJAX 调用的 PHP header() 无法正常工作

    我是网络开发新手 现在我正在开发网站上的登录功能 我使用 Javascript AJAX 获取用户名和密码并将其发送到 PHP 文件以在 MYSQL 数据库上进行验证 这就是我要做的 我的问题是为什么 header 函数不能正常工作 我想在
  • PDO中使用持久连接有什么缺点

    在 PDO 中 可以使用以下方法使连接持久化PDO ATTR PERSISTENT属性 根据 php 手册 持久连接不会在脚本结束时关闭 而是 当另一个脚本请求连接时 会被缓存并重新使用 相同的凭据 持久连接缓存允许您 避免每次建立新连接的
  • 将 3 个具有透明度的图像组合在一起

    我正在做这个项目 我想将三张图像合并为一张 到目前为止 有效的方法是使每个图像 jpg 透明 但将它们合并成新的 png 图像后 透明度就消失了 这是代码 function CreateMyCoolOutfitBaby Outfitwidt
  • php curl 获取 html 和 js 渲染

    php curl 只获取html页面的源代码 不执行js脚本 我需要我的网站获取已执行所有 JavaScript 的源代码 我使用ajax 但无法在页面中添加更多js 因为当我加载另一个页面时脚本会保留 我找到了 SpiderMonkey
  • 教义:如何从侦听器(preDqlSelect)内的选择查询中删除部分 where 子句?

    我的侦听器是行为的一部分 该行为应该删除任何调用的 select 查询的 where 子句中的所有 is published 检查 在子句中添加一个部分确实很容易 但如何删除一个部分呢 有一些功能 例如Doctrine Query gt r
  • PHP imap_search 未检测到 gmail 收件箱中的所有邮件

    当我运行一个非常简单的imap search在我的 GMail 收件箱中 搜索返回的邮件数量少于应有的数量 这是任何拥有 GMail 帐户的人都可以运行的脚本 host imap gmail com 993 imap ssl user fo
  • 发送抓取请求以获取 torrent 的种子和同级

    我一直在尝试创建一个 torrent 网站 但我遇到了以下问题 如何发送 torrent 抓取请求以获取其播种者和水蛭 我有一个 PHP 类函数 它为我提供公告列表 public function getTrackers Load trac
  • 我可以通过 Reflection 获取私有财产的价值吗?

    它似乎不起作用 ref new ReflectionObject obj if ref gt hasProperty privateProperty print r ref gt getProperty privateProperty 它进
  • SQL 和 Dapper 性能隐式转换

    我们如何防止 Dapper 中的 SQL 隐式转换 我们意识到 我们正在进行 SQL 隐式转换 导致索引扫描和死锁 Dapper 参数是 nvarchar 而 SQL 表列是 varchar 这导致我们所有的 sql 列都转换为 nvarc
  • 何时何地打开数据库连接

    我正在努力实现发现的 mysql 类的使用here http www ricocheting com scripts php mysql wrapper php在现有脚本中 该脚本几乎总是需要与数据库交互 即使有时不需要 在这种情况下 最佳

随机推荐

  • 如何检查两个 JSON 对象是否相等?

    我试图发现两个 JSON 字符串是否相等 这是我之前尝试过的 var obj1 Json Decode ValueA 1 ValueB 2 var obj2 Json Decode ValueB 2 ValueA 1 But then th
  • React Native 构建错误:文本不能为 null 或为空

    我的 Jenkins 构建给了我以下错误 13 18 22 FAILURE Build failed with an exception 13 18 22 13 18 22 Where 13 18 22 Script Users abcd
  • FindByIdentity - 性能差异

    以下代码在我们域中的各种机器上运行良好 var context new PrincipalContext ContextType Domain var principal UserPrincipal FindByIdentity conte
  • 将 Float 数组写入二进制文件并在 swift 中读取

    我怎样才能写数组Float到二进制文件然后读取它 var array Float 0 1 0 2 0 3 func writeArrayToBinary array Float func readArrayFromBinary gt Flo
  • 授予对其他 MySQL 数据库的权限会导致问题

    我有一个用户 myuser 和两个数据库 db1 and db2 myuser 已经有使用权db1我想授予他额外的权限来使用 db2 通过使用以下查询 GRANT ALL ON db2 TO myuser localhost 在我运行拨款声
  • 是否有一个表保存 sysobjects.xtype 描述的列表?

    根据sysobjects 文档 https msdn microsoft com en us library ms177596 aspx sysobjects xtype可以是以下对象类型之一 xtype Description AF Ag
  • 使用 Node 查找 PDF 页数(在 Windows 上)

    我做了很多研究 我想还不够 并试图找到一个易于使用的库来使用 Node js 查找 PDF 的页数 该库需要可在 Windows 操作系统上使用 有人知道如何最好地解决这个问题吗 最坏的情况是 我正在考虑使用 PhantomJS 和 PDF
  • 如何减少 Node 应用程序在 Google App Engine 上的部署时间

    现在时间约为 10 分钟 但我的应用程序在 npm install 上使用了 2 分钟 应用程序引擎在每次部署时都会执行此操作 然后运行大约 5 秒 为什么需要这么长时间 有什么技巧可以降低这个时间吗 我在其他地方听说这是因为改变了路线 并
  • Cython 动态库链接

    我实际上正在尝试将现有的 C 库链接到我的 Cython 程序 我可以访问该库的入口点标头 h 其中所有函数声明为 EXPORT API int stdcall LibFunction 我想EXPORT API用于创建 dll declsp
  • 可编辑列表视图

    我希望在 C winforms 应用程序中创建一个可编辑的 ListView 用户可以双击单元格来更改其内容 如果有人能为我提供一些指导和 或示例 那就太好了 我不打算使用任何商业产品 你问错了问题 ListView 不是正确的控件 使用数
  • 我应该使用内存数据库而不是模拟我的存储库吗?

    我喜欢在测试时使用内存数据库 例如 SQLite 的想法 而不是为我的存储库创建模拟 这样我还可以测试我的存储库的代码 而不会出现任何性能问题 该策略的优点和缺点是什么 如果我使用 ORM 我通常倾向于在内存数据库中使用 sqlite 来测
  • 如何将 pandas DataFrame 保存到 Excel 文件?

    我正在尝试从 Web 源加载数据并将其保存为 Excel 文件 但不知道该怎么做 我应该怎么办 import requests import pandas as pd import xmltodict url https www kstan
  • Phonegap 应用程序性能与本机应用程序性能

    我们正在考虑构建一个条形码扫描应用程序 我们正在考虑使用 PhoneGap 但我们唯一担心的是速度 该应用程序要做的只是扫描条形码并检查服务器以查看其是否有效 该应用程序非常频繁地使用相机通过图像扫描条形码 我的主要问题是 通过phoneg
  • 从Matlab到C++特征矩阵运算——向量归一化

    将一些 Matlab 代码转换为 C 问题 如何在 C 中 连接矩阵中的两个向量 已经找到解决办法了 标准化每个数组 pts col 除以它的第三个值 1和2的Matlab代码 1 A 3x1 vector d0 d1 double B d
  • 是否可以将附件视图的顺序更改为 drupal 页面视图?

    我有一个页面显示的视图 其中基本上包含内容 A 该内容存在于一列中 此外 我还有另外 6 个附件显示 在另一列中显示内容 B C D E 等 是否可以修改附加视图的显示顺序 现在我已将它们全部设置为附加在内容 A 页面之后 我不是 100
  • 如何在列之间留出空间?

    我有一个文本文件 如下所示 我想在第五列中的字符和数字之间留一个空格 我怎样才能用 awk 做到这一点 cxe 911 bv heg A1029 53 030 bvf 912 cv lya A1030 51 99 Desired outpu
  • 将 HTML 表格导出到 Excel 在 IE 中不起作用

    将 HTML 表格导出到 Excel 在 Chrome 和 Firefox 中工作正常 但在 Internet Explorer 10 中不起作用 var tableToExcel function var uri data applica
  • 定位彩条 - Matplotlib

    我有一个合并两个数据的图 鉴于此 我必须显示两个不同的颜色条 每个数据一个 我目前正在绘制数据如下 plt figure Data 1 fig plt imshow data1 interpolation nearest cmap bina
  • C# 奇怪的精度丢失 int 到浮动和向后

    当尝试从 int 转换为 float 并向后转换时 会发生奇怪的事情 原始示例代码 整数值 28218681 val 28218681 浮点 fVal 浮点 val fVal 2 821868E 07 int val2 int fVal v
  • PHP SQLSRV:sqlsrv_query() 是否可以正确地准备 select 语句?

    TL DR Does sqlsrv query 做同样的工作select陈述比sqlsrv prepare and sqlsrv execute 关于准备好的陈述 做什么 我怎样才能做一个安全的select陈述 一点历史 我是 PHP 开发