如何使用 PHP 将撇号从文本区域传递到 MySQL

2023-12-08

我有一个文本区域,用户也可以添加注释。在下一页上我使用$_POST[Comments]显示输入的内容。我有一个编辑按钮可以返回并查看输入的内容并编辑注释,但是当我显示$_POST[Comments]它显示了撇号之前的所有内容。

Example:

最初输入:Let's try this.

编辑时:Let

现在,当我将它传递给服务器进行 SQL 添加时,我使用以下函数来防止 SQL 注入

function keepSafe($value) {
        if (get_magic_quotes_gpc()) {
            $value = stripslashes($value);
        }
        if (!is_numeric($value)) {
            $value = "'" . mysqli_real_escape_string($value) . "'";
        }
        return $value;
    }

以下是我用来格式化 SQL 插入输入的内容。

$Comments = str_replace("\n","<br />",$_POST['CustComments']);
    $Comments = keepSafe($_POST['Comments']);

在提交之前进行编辑时,我需要能够看到注释部分中的所有撇号。我想确保当我提交它时,它是一个阻止 SQL 注入的安全代码。


撇号的问题:

您可能使用这样的输入:

<input type='text' value='<?php echo $value;?>'/>

问题是,如果该值有撇号,就会发生这种情况:

<input type='text' value='Let's play'/>

因此,由于变量中的撇号,值标记已结束。

要修复它,只需使用 htmlspecialchars 和 ENT_QUOTES:

<?php 
 $value = htmlspecialchars("Let's play", ENT_QUOTES);
?>
<input type='text' value='<?php echo $value; ?>'/>

这样,撇号就会被编码,并且可以在您的表单中进行编辑

关于SQL注入:

只需使用mysqli 的准备语句你会没事的。为了确保您免受 XSS 侵害,请始终htmlspecialcharsHTML 输出中的用户输入。更好的方法是仅将输入过滤为您需要的内容,然后仅将过滤后的输入保存到数据库中。

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

如何使用 PHP 将撇号从文本区域传递到 MySQL 的相关文章

  • Android GCM 服务器的 API 密钥

    我有点困惑我应该为 GCM 服务器使用哪个 API 密钥 在文档中它说使用 android api 密钥 这对我不起作用并且总是给出未经授权的 http developer android com google gcm gs html ht
  • PHP中如何识别服务器IP地址

    PHP中如何识别服务器IP地址 对于服务器 ip 来说是这样的 SERVER SERVER ADDR 这是港口的 SERVER SERVER PORT
  • 使用 DOJO 自动完成文本框

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

    mysql 表 config name config value allow autologin 1 allow md5 0 当前的 php 代码 sth mysql query SELECT rows array while r mysq
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • php 表单提交 - Q2

    我对这个虚拟问题感到抱歉 这是我的简单 PHP 表单 其中包含两个 SQL 表和 ADD 提交 按钮 我希望将人员从 Test1 转移到 Test2 很多事情都很好 只有提交按钮不起作用 因此 Test2 表没有反馈 Revised 现在提
  • 为什么 PHP 中不允许“传统”类型提示?

    刚刚发现类型提示 http php net manual en language oop5 typehinting phpPHP 中允许 但不适用于整数 字符串 布尔值或浮点数 为什么 PHP 不允许对整数 字符串等类型进行类型提示 从 P
  • 如何在 Zend Framework 中处理移动设备?

    我接手了一个噩梦般的项目 我正在迁移一个写得很差的站点 并慢慢地将其迁移到 Zend Framework 应用程序中 不幸的是 我没有时间做补救工作 使这变得可以忍受 也许是一个或两个模型 我现在被告知该网站很快就会有移动版本 建议是克隆旧
  • 如何在 WordPress 中按类别获取所有帖子

    我想在 WordPress 中按类别获取帖子 args array post type gt project postslist get posts args 0 gt WP Post 对象 ID gt 421 post author gt
  • 来自本地 XML 的模拟 SoapClient 响应

    我想用文件中的 XML 来模拟 SoapClient 的响应 我如何创建一个 stdClass 对象 就像 SoapClient 从文件返回一样 客户端已经包装了 SoapClient 因此可以轻松模拟响应 我的模拟是这样的 soapCli
  • PHP、jQuery 和 Ajax 调用乱序

    我正在使用 jQuery 进行 Ajax 调用 我有 x 数量的 Ajax 调用附加到 div 这些 Ajax 加载请求是由 PHP foreach 循环生成的 问题是它们渲染的顺序不正确 它们被设置在数组中
  • 将数据库中的用户 ID 添加到 Codeigniter 中的会话数据中?

    我是 CodeIgniter 的新手 在从数据库添加用户 ID 用户登录后 到会话数据时遇到问题 这是我的代码问题 之前可能会在 SOF 上被问到 在付出了所有努力之后 我问这个 登录模型
  • PHP 基本身份验证 file_get_contents() [重复]

    这个问题在这里已经有答案了 我需要从网站解析一些 XML 数据 XML 数据是原始格式 但在我需要进行身份验证之前 基于基本网络服务器的身份验证 使用用户名和密码 I tried homepage file get contents htt
  • 尝试获取 Google accessToken

    看起来 无论我做什么 谷歌都在竭尽全力阻止我完成这个研究项目 我的项目让我使用 Google 电子表格作为数据库 并使用所述电子表格中的数据执行程序化的 Google 图片搜索 并向最终用户显示一些结果 设置说明 我开始按照此处的说明进行操
  • Doctrine 1 和 Symfony 1 的多个主键?

    我已经知道在 Symfony 1 和 Doctrine 1 中不可能使用多个主键 但是你们知道有什么好的解决方法吗 除了多对多关系之外 原则 1 不适用于多列上的主键 但如果你想使用多对多关系 请像这样使用 BlogPost columns
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • 在 null laravel 上调用成员函数 save()

    大家好 我正在使用 laravel 5 多态关系将数据保存在数据库中 但我遇到了一些问题 当我尝试将数据保存在数据库中时 它会抛出此错误 对 null 调用成员函数 save 我不知道为什么我会遇到这个错误 我正在关注多态关系的本教程在 L
  • 具有更改用户代理上下文的 file_get_contents 不起作用

    我正在尝试获取页面的阅读数和点赞数 网址是 https mp weixin qq com s NPavBeHc8VdWXeSL6kfLRg https mp weixin qq com s NPavBeHc8VdWXeSL6kfLRg 您必
  • 如何让Gmail像加载进度条一样

    我想在页面的中心和顶部创建一个像 Gmail 一样的加载进度条 并适用于所有浏览器 这是基本代码
  • 谷歌日历手表过期时间超过1个月怎么办?

    我将我的 CRM 系统与 Google 日历同步 为此 我要求push notifications从我的用户 Google 日历到我的系统 我已经成功创建了手表 并将过期时间设置为2030年 但是当我收到手表事件的响应时 它显示手表的过期时

随机推荐

  • AS3 中的安全沙箱

    什么是安全沙箱违规 如何覆盖它 我正在 FlashDevelop 中制作一个项目 今天 它不会加载外部文件 即使以前加载过 它给出以下输出 安全沙箱违规 连接到 文件 C Documents 20and 20Settings Kevin P
  • 从浏览器控制台删除错误消息 (Angular HttpClient)

    HttpClient 有没有办法从浏览器控制台中删除错误消息 我当前的代码如下所示 getStuff stuffId string Observable
  • 如何从 UIPickerview 中删除选择行

    嗨我正在使用picker view 默认情况下选择第一行 我不想要这个选项 例如 我有 否 和 是 选项 如果我在pickerview中给出此选项 否 将在pickerview中被选择 附上屏幕截图 我不需要这个 我需要第一行为空 一旦用户
  • 如何从 Postman Rest 客户端发送 spring csrf 令牌?

    I have CSRF保护在Spring框架中 因此 在每个请求中 我从 ajax 调用的标头中发送 csrf 令牌 这是完美的工作 var token meta name csrf attr content var header meta
  • Android初学者padding和margin的区别[重复]

    这个问题在这里已经有答案了 我已经提出了有关SO的问题 还检查了一个答案 填充是边框内部 边框与实际视图内容之间的空间 请注意 填充完全围绕内容 顶部 底部 右侧和左侧都有填充 可以是独立的 边距是边框外部 边框与该视图旁边的其他元素之间的
  • Xcode 中的 Target 到底是什么?

    我一直想知道这些目标是怎么回事 这是什么一回事呢 那有什么意义呢 我从来不需要摆弄它们 但显然我可以 我为什么要这样 我能用它们做什么 他们的目的是什么 每个项目都可以构建多个可执行文件或库 或者调用 makefile 或 shell 脚本
  • C++11 中的逗号运算符(排序)

    标准中提到f a t 3 t 2 c 根据我的理解 这将是一个赋值表达式 后跟第二个运算符的表达式 但语法将其并列列出 表达 赋值表达式 表达式 赋值表达式 工作草案 编程标准 C语言 修订版 N4140 2014 年 11 月 有人好心向
  • 了解异步和等待

    我正在尝试学习 MVC5 的细节 但遇到了一些让我困惑的事情 在默认情况下带有个人身份验证的 MVC5 项目的 accountController 中 异步登录和注册方法中有这行代码 var result await UserManager
  • `git` 显示克隆后更改的文件,无需任何其他操作

    git clone email protected erocarrera pydot 35a8d858b 在 Debian 中git config core autocrlf input shows modified test graphs
  • 检查是否是用户首次访问

    不知道如何做到这一点 但我想做的是运行一个简单的 jquery 动画 例如 intro eq 0 delay 800 animate opacity 0 1000 function this remove 但仅当用户第一次访问该网站时 因此
  • Jekyll 博客显示类别下的帖子

    我想显示来自某个类别的帖子 例如 转到 urlhttp example com posts programming将列出所有类别为 编程 的帖子 我的一般博客索引如下所示 for post in site posts div class p
  • 如何计算 naive_bayes MultinomialNB 中的 feature_log_prob_

    这是我的代码 Load libraries import numpy as np from sklearn naive bayes import MultinomialNB from sklearn feature extraction t
  • 确定 pandas 数据框中另一列的列最大值

    我有一个数据框 其中包含位置 ID 商店名称和商店收入 我想确定每个区域收入最大的商店 我为此编写了代码 但不确定是否有更好的方法来处理这种情况 import pandas as pd dframe pd DataFrame Loc Id
  • 仅使用 Moment JS 将 Microsoft JSON 日期转换为本地日期时间

    JSON 日期 日期 1373428800000 最终结果 美国东部时间 2013 年 7 月 9 日晚上 8 00 目前我分三步进行 var a cleanJsonDate JsonDate var b formatDate a 7 10
  • 如何根据日期时间生成表名?

    我意识到这在语法上很糟糕 但我认为它在某种程度上解释了我想要做的事情 本质上 我有一个批处理作业 每天早上都会在一个小表上运行 作为规范的一部分 我需要在每次加载之前创建一个可以通过报告访问的备份 到目前为止我所拥有的是 select in
  • 该领域的架构中缺少该类

    项目设置 安卓工作室2 3 3 境界3 5 0 Source RealmController java public RealmController Context context try this context context Real
  • childNodes[] 在 IE9 中无法像在 IE7 和 8 中一样工作

    我有一些代码可以在 IE7 和 8 中运行 但不能在 9 中运行 var table document getElementById RadGrid ctl01 childNodes 2 这在 IE9 中不起作用 现在我确实读到 IE9 计
  • 如何使用 Twisted 获取 IRC 频道的用户列表

    我正在尝试使用获取频道的用户列表 self say channel WHO 100 我怎样才能得到回复 我应该重写哪个方法 这里有一些额外的方法可以帮助您取得进一步的进展 您处理给定的回复RPL NAME通过定义一个方法irc RPL NA
  • 如何使用Maven只签署三个jar并将它们推送到Maven Central?

    更新 参见跟进问题 我有一个 Java 库 其构建过程完全用 Ant 编写 项目的沙箱 源目录 我在其中编辑代码 是 R jeffy programming sandbox xbnjava 它的构建 输出 目录是 R jeffy progr
  • 如何使用 PHP 将撇号从文本区域传递到 MySQL

    我有一个文本区域 用户也可以添加注释 在下一页上我使用 POST Comments 显示输入的内容 我有一个编辑按钮可以返回并查看输入的内容并编辑注释 但是当我显示 POST Comments 它显示了撇号之前的所有内容 Example 最