PDO 和清理日期/删除 HTML

2024-04-07

我让用户使用此代码更新他们的姓名。

    $dbh = connect();
    $q = $dbh->prepare('UPDATE Users SET username=:name WHERE User_ID=:id LIMIT 1'); 
    $q->bindParam(":id", $loggedInUser->user_id, PDO::PARAM_INT);
    $q->bindParam(":name", $_GET['name'], PDO::PARAM_STR);
    $q->execute();

A)这足以净化信息吗? b) 当我把 HTML 标签放在那里时<b>name</b>它实际上在我的网站上以粗体显示!是否有一个选项可以让 PDO 删除所有 HTML?


看起来相当合理。不过,我建议使用 POST 而不是 GET 来进行破坏性/操纵操作。如果您坚持使用 POST 数据,那么您遭受 CSRF 攻击的可能性就会小得多,尽管这并不能让您完全免疫。

如果您实际上并不希望用户在名称字段中输入 HTML,则不必担心在进入数据库的过程中过滤数据。在出去的路上逃脱它htmlspecialchars() or htmlentities().

我一直坚持这样的观点:数据应该尽可能原始地存入数据库。

Edit:差点忘了,确保预期值$_GET / $_POST在尝试使用它们之前实际上已经存在,例如

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

PDO 和清理日期/删除 HTML 的相关文章

  • 如何根据另一个下拉列表中的选择动态填充下拉列表中的选项?

    我有一个表 其中包含类别信息 例如产品 我已将它们列在下拉菜单中 现在 我需要做的是 在下一个下拉菜单中列出所选类别的子类别 我希望 javascript 是必需的 但我对 javascript 还不太熟悉 将非常感谢您的帮助 你应该使用
  • PHPunit - 错误

    当 PHPunit 框架不希望发生的错误发生时 测试会停止 PHP 会抛出错误 但 PHPunit 不会记录这是一个错误 我如何确保 PHPunit 将其记录为错误 免责声明 我是 PHPUnit 的新手 我也试图弄清楚 发生错误时会发生什
  • MYSQL 的 Google OAuth 2.0 用户 ID 数据类型

    我正在实施 Google OAuth 2 0 并注意到 Google OAuth 返回的唯一用户 ID 是21位数字长的 我想大整数 20 足以满足这种需求 但我现在看到 Google OAuth 返回的用户 ID 的长度感到困惑 关于我应
  • PHP 文件上传帮助

    div align center div 这是我的代码
  • Laravel 5.1 中的VerifyCsrfToken.php 第 53 行:(Firefox 浏览器)中出现 TokenMismatchException?

    我试图找出为什么会出现这个错误 即使它是全新安装的 我在我的项目中遇到了这个错误 所以我用谷歌搜索 没有一个答案对我有用 所以我创建了新项目并复制了所有控制器 视图和模型 几个小时后工作正常 再次出现令牌不匹配错误 为什么在 laravel
  • 关于加拿大短信网关提供商的建议[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我很好奇 如果我能够接受传入的短信到某个号码 然后将其传递给 PHP 中的服务器端应用程序 会带来多少麻烦 金钱 我最终会通过电子邮件地址发回短信 有
  • 如何以编程方式获取 WooCommerce 中的所有产品?

    我想获取 WooCommerce 中的所有产品数据 产品 sku 名称 价格 库存数量 可用性等 我可以使用 wp query 来做到这一点吗 这样你就可以通过 wp query 获取所有产品 global wpdb all product
  • Laravel 广播:通知与事件

    我阅读了 laravel 文档Events and Notifications 似乎我们可以触发一个事件 并从该事件中触发 使用ShouldBroadcast接口 将其广播到我理解的 laravel echo 另一方面我们可以使用通知via
  • Laravel 按动态 ID 数组对集合进行排序 [重复]

    这个问题在这里已经有答案了 我有以下 people array 5 2 9 6 11 people collection People find people 但当我倾倒并死去时 people collection集合按 ID ASC 排序
  • CakePHP Xml 实用程序库触发 DOMDocument 警告

    我正在使用 CakePHP 在视图中生成 XMLXML核心库 http book cakephp org 2 0 en core utility libraries xml html xml Xml build data array ret
  • PHP 中的 NOW() 函数

    是否有 PHP 函数以与 MySQL 函数相同的格式返回日期和时间NOW 我知道如何使用date 但我想问是否有专门用于此的功能 例如 返回 2009 12 01 00 00 00 您可以使用date https www php net m
  • PHP7构造函数类名

    我有一个 Laravel 4 2 应用程序 它可以与 PHP5 一起使用 没有任何问题 由于我安装了一个运行 PHP7 的新 vagrant box 一旦我运行一个模型 其中函数名称与类名称 关系函数 相同 就会出现错误 如下所示
  • 未捕获的异常“Google_IO_Exception”,消息为“HTTP 错误:无法连接”

    我有一个任务 查询 运行一些从 gmail 邮箱检索数据的 php 代码 直到上周五 2015 年 4 月 10 日 它一直工作正常 现在我收到以下错误日志 E 11 58 26 094 2015 04 15 200 3 38 KB 14
  • 使用 DOJO 自动完成文本框

    我正在寻找一种使用 DOJO 进行文本框自动建议的简单方法 我将查询的数据库表 使用 PHP 脚本 以 JSON 形式返回 有超过 100 000 条记录 因此这确实不应该采用 FilteringSelect 或 ComboBox 的形式
  • postgreSQL 在 WAMP 上的集成

    我刚刚在 Windows 7 上安装了 postgreSQL 我正在尝试将 postgreSQL 与 WAMP 服务器集成 为此 我在 httpd conf 和 php ini 文件中进行了以下更改 1个加载模块c path to libp
  • 将 MySQL 结果作为 PHP 数组

    mysql 表 config name config value allow autologin 1 allow md5 0 当前的 php 代码 sth mysql query SELECT rows array while r mysq
  • 如何在html中制作多行类型的文本框?

  • PHP文件上传

    如果我想在文件名转到服务器的永久位置 而不是临时位置 之前更改文件名 我该如何执行此操作 代码如下
  • php下拉菜单人口

    我正在尝试编写一个 php 脚本 该脚本将根据主下拉菜单的选择填充第二个下拉菜单 我想使用 jquery 来完成所有非页面刷新的事情 但我发现现有的所有东西都很难理解和修改 你知道有什么写得很好且易于理解的东西吗 或者可能是现有的教程 下面
  • 在 PHP 中模拟 jQuery.ajax 请求

    我必须在 PHP 中模拟 AJAX 请求 就像在 jQuery 中一样 我当前的代码在这里 原始 AJAX 调用 不得修改 ajax type POST url someFile php data data success function

随机推荐

  • 登录 GCP 和本地

    我正在构建一个旨在在 Google Cloud Platform 中的虚拟机上运行的系统 但是 作为一种备份形式 它也可以在本地运行 话虽这么说 我目前的问题是日志记录 我有两个记录器 都可以工作 一个本地记录器和一个云记录器 云记录器 i
  • 在 FTP 上上传文件

    我想将文件从一台服务器上传到另一台 FTP 服务器 以下是我上传文件的代码 但它抛出错误 远程服务器返回错误 550 文件不可用 例如 未找到文件 无法访问 这是我的代码 string CompleteDPath ftp URL strin
  • 使用贝叶斯优化的深度学习结构的超参数优化

    我为原始信号分类任务构建了 CLDNN 卷积 LSTM 深度神经网络 结构 每个训练周期运行约 90 秒 超参数似乎很难优化 我一直在研究优化超参数的各种方法 例如随机或网格搜索 并发现了贝叶斯优化 虽然我还没有完全理解优化算法 但我认为它
  • Keras model.fit log 和 Sklearn.metrics.confusion_matrix 报告的验证准确性指标彼此不匹配

    问题是报道的validation accuracy我从 Keras 获得的价值model fit历史显着高于validation accuracy我得到的指标sklearn metrics功能 我得到的结果model fit总结如下 Las
  • Java gRPC 服务器用于长寿命流的有效实现

    我想了解 gRPC 框架的一部分 用于长期流的资源管理 假设我们有无限的罕见 每秒一次左右 事件源 我们希望通过 grpc 流的方式将其流式传输到客户端 这些事件由服务器上的单个应用程序线程生成 我看到两种可能的流事件实现 在 rpc 调用
  • 如何在具有复合 PK 的实体中使用“findBy”(Hibernate JPA)

    我正在用 bootspring 学习 findByDate int date 以前一直工作直到我搬家int Date进入内部类 现在我可以保存新条目 但无法按日期检索它们 我需要改变什么 Transactional public inter
  • 在 package:html、dart:html、dart:io(类 HttpClient)和 package:http API 之间进行选择来获取 HTTP 资源

    我意识到目前至少有三个 官方 Dart 库允许我执行 HTTP 请求 更重要的是 其中三个库 dart io 类 HttpClient package http 和 dart html 各自具有不同的 不兼容的 API 截至今天 packa
  • Phonegap - 检测仿真

    Phonegap 应用程序如何确定它是在实际设备上运行还是在模拟设备上运行 我需要一个同时适用于 Android 和 iOS 的解决方案 你有没有看一下设备接口 http docs phonegap com en 3 3 0 cordova
  • 如何编写 mql4 代码 (EA) 用矩形标记列出的蜡烛形态

    我对写作很陌生mql4代码 如果我能在出现以下烛台图案时获得一些绘制矩形的帮助 我将不胜感激 FIG1 Run code snippet blockquote class imgur embed pub a href imgur com a
  • GPU编程简介[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 每个人的桌面上都有一台以显卡 GPU 形式存在的巨大的大规模并行超级计算机 GPU 社区的 hello world 相当于什么 我该做什么 去哪
  • CBC 模式下的 HMAC-SHA256 和 AES-256

    我最近遇到以下代码示例 http code activestate com recipes 576980 authenticated encryption with pycrypto 用于使用 AES 256 CBC 和 SHA 256 H
  • 使用 Spring JPA 和 Hibernate 访问 Session 以启用过滤器

    在 Spring JPA Hibernate 环境中 我需要启用 Hibernate 实体过滤器 所以我应该有权访问 Hibernate Session 对象 但我正在使用 EntityManagerFactory 和 Spring JPA
  • 如何隐藏共享操作提供程序附近的共享操作(使用最多的)图标?

    看图片 如何隐藏 P 图标 表示分享到 Pinterest 它们都在操作栏上 我使用 ActionBarSherlock 如果您愿意保留所有分享历史数据模型 但只是不想要额外的 默认共享活动 icom 答案在使用 ShareActionPr
  • 将 java.sql.Timestamp 转换为 Java 8 ZonedDateTime?

    将 Joda 时间迁移到 Java 8 Joda UserObject user new UserObject user setCreatedAt new DateTime rs getTimestamp columnName 迁移到 Ja
  • 如何确定 C++03 中的类型是否可取消引用?

    In C 03 如何判断一个类型是否T是可解引用的吗 我的意思是 我如何静态地确定是否 t将是一个有效的表达式t类型的T 我的尝试 template
  • GitHub 与现有 GPG 密钥合并失败

    我们有多个 github 存储库 需要对拉取请求进行签名提交 有时 由于警告 提交需要签名 我们无法合并拉取请求 即使提交已签名 看起来创建拉取请求的人可以合并它 Sqash 和合并 即使它只包含 1 次提交 这发生在两个帐户都是拉取请求的
  • 迭代器的性能优势?

    使用迭代器可以提供哪些性能优势 如果有 这似乎是解决许多问题的 正确方法 但它是否会创建更快 更内存敏感的代码 我正在专门用 Python 思考 但不要将答案限制于此 实际上 Python 邮件列表上有一篇关于此的非常好的邮件 迭代器与列表
  • Angular 2:从另一个组件调用现有组件

    我正在使用路由功能使用 Angular 2 创建一个应用程序 并且我有一个由较高路由之一呈现的弹出组件 并且我想在由以下之一呈现的组件中的单击事件上打开它更深层次的路线 例如 假设我有一个基本路由器 其模板包含弹出窗口 Component
  • 使用 C++0x decltype 返回值时返回局部变量或临时变量的地址

    Edit 这确实是编译器的一个bug 我开了一个defect https connect microsoft com VisualStudio feedback details 573330 bad code generated for f
  • PDO 和清理日期/删除 HTML

    我让用户使用此代码更新他们的姓名 dbh connect q dbh gt prepare UPDATE Users SET username name WHERE User ID id LIMIT 1 q gt bindParam id