sanitization相关内容
您好,我怎样才能只允许数字[^0-9]和数字前面的减号。示例: 有效=-1.-9,无效=--1-. 推荐答案 只需删除每个无效字符,并检查其余字符的格式是否有效: $cleaned = preg_replace('/[^-0-9]+/', '', $str); if (preg_match('/^-?[0-9]+$/', $cleaned)) { // now valid
..
这个标题听起来可能有些奇怪,但我想尝试设置这个preg_place,它可以为文本区域处理杂乱无章的编写者。它必须: 如果有感叹号,则不应该连续有另一个感叹号。 如果有.,则逗号获胜,并且必须是。 如果昏迷前有一个+空格,则应减为零。 句子不能以逗号开头或结尾。 相同字母连接在一起的字母不应超过2个。 逗号后必须始终出现空格。 例如: ,我的房子是绿色的。很漂亮! 我的
..
我必须更新工作中的旧项目.虽然我熟悉 php 脚本,但我没有任何经典 asp 的经验. 有什么我应该使用的功能吗? 能否为我提供一些基本保护的好功能? 在 asp 中有没有类似参数化查询的东西? 谢谢! 解决方案 是的,您可以在经典 ASP(更准确地说,经典 ADO)中使用参数化查询. 这是一个链接. 至于编码输出,我可能想为最新的 Microsoft Anti
..
我的不幸任务是清理一堆旧的 ColdFusion 代码.查询无处不在,我正在努力将它们全部转移到常见的 CFC 上以便于维护. 我遇到了一个问题,因为 cfquery 会自动将单引号转换为双单引号.如何覆盖该行为? 更具体的信息如下. 所以这是我开始的查询: 这里奇怪的是,由于我们希望它显示的方式,文字被“选择"了(再说一遍,我没有写这个,我只是想稍微清理一下).所以在普通
..
$stmt = $conn->prepare('SELECT * FROM users WHERE user_id = :user_id');$stmt->execute(array(':user_id' => $_GET['user_id']));$result = $stmt->fetchAll(PDO::FETCH_OBJ); 我正在使用这样的 PDO,我需要清理 GET 参数吗?
..
我知道多年来有很多关于使用 PHP 过滤数据的最佳方法的讨论,但我想在我当前的项目中采用白名单方法. 我只希望用户能够使用以下 HTML 粗体斜体下划线删除线大尺寸小尺寸超链接网站项目符号列表:
一个项目
另一个项目
..
我已经安装了 PHP 8.1 并开始测试我的旧项目.我使用了过滤器 FILTER_SANITIZE_STRING 像这样: $username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING); 现在我收到此错误: 已弃用:不推荐使用常量 FILTER_SANITIZE_STRING 当我使用 FILTER
..
我正在尝试提出一个函数,它可以很好地清理某些字符串,以便它们可以安全地在 URL 中使用(如 post slug),并且也可以安全地用作文件名.例如,当有人上传文件时,我想确保从名称中删除所有危险字符. 到目前为止,我想出了以下功能,希望能解决这个问题,并允许外部 UTF-8 数据. /*** 将字符串转换为文件/URL 安全的“slug"形式** @param string $strin
..
您好,我希望使我的小程序安全,以便潜在的恶意用户无法查看服务器上的敏感文件. $path = "/home/gsmcms/public_html/central/app/webroot/{$_GET['file']}";如果(文件存在($路径)){echo file_get_contents($path);} 别的 {header('HTTP/1.1 404 未找到');} 我知道像“../
..
我的 Perl 程序从磁盘文件中获取一些文本作为输入,将其包装在一些 XML 中,然后将其输出到 STDOUT.输入名义上是 UTF-8,但有时会插入垃圾.我需要清理输出,以免发出无效的 UTF-8 八位字节,否则下游消费者 (Sphinx) 会崩溃. 至少我想知道是否数据无效,这样我就可以避免传递它;理想情况下,我可以只删除有问题的字节.但是,启用我能找到的所有宿命论并不能完全让我使用 p
..
我试图想出一个函数,我可以通过我的所有字符串进行消毒.这样从它出来的字符串对于数据库插入来说是安全的.但是有太多过滤功能,我不确定我应该使用/需要哪些. 请帮我填空: function filterThis($string) {$string = mysql_real_escape_string($string);$string = htmlentities($string);等等...返
..
我有一个包含很多变量的表单,然后发送电子邮件,而不是使用 filter_var($_POST['var'], FILTER_SANITIZE_STRING) 清理每个 $_POST 值; 我想要一段更简单的代码.我想出了以下内容,这似乎有效,因为我相信默认操作是 FILTER_SANITIZE_STRING,但我只是想知道人们的意见是什么,如果这不是一个好的做法,也许你可以告诉我为什么?$_POS
..
我有一个数组,它来自 $_POST[] 并且可以在其中包含其他数组作为值,例如: 数组('标题' =>'标题','数据' =>大批('hdr' =>'标题''bdy' =>'身体'),'富' =>数组(1, 23, 65),...) 如何清理这个大数组的所有值?例如.将 strip_tags() 应用于 Title、Header、Body、1 等值、23、65 等? 解决方案 看看 a
..
我正在尝试将换行符 (\n) 转换为 html br. 根据 Google 群组中的讨论,我得到了以下信息: myApp.filter('newlines', function () {返回函数(文本){return text.replace(/\n/g, ' ');}}); 那里的讨论还建议在视图中使用以下内容: {{ dataFromModel |换行 |html }} 这似乎使用了
..
我正在尝试将 base64 字符串呈现为
..
我在各处看到不同的评论,有人说 Zend 框架会自动清理 post/get 数据,但其他人说它不会. 怎么回事?我已经看到在 predispatch 中使用 getParams 上的 foreach 执行此操作是最快的方法,但有人有任何建议吗? 解决方案 可能是关于 Zend_Controller_Request 与 Zend_Db 的交易.请求数据经常被放入数据库中. 请求对
..
我正在使用以 UTF-8 运行的 php 5.4.4,我不确定我是否正确使用 htmlspecialchars. 我的字符串/变量如下所示: $text = "
By: ".htmlspecialchars($foo)."
";回声 $text; 我是否需要使用 ENT_QUOTES 或者只有在我必须回显某些内容时
..
我正在清理当前的 html(字符串值),我想知道是否可以只允许某些属性.在这个例子中,字符串应该只保留“id"属性.像这样:
DomSanitizer
ourSafeCode()'); 这是我的组件的一个例子. 从“@angular/platform-browser"导入 {BrowserModule, DomSa
..
我正在开发一个使用 sqlsrv 驱动程序的 PHP MSSQL 项目.阻止 SQL 注入攻击的最佳方法是什么?我需要像 mysql_real_escape_string() 这样的东西,但是对于 sqlsrv 驱动程序. 解决方案 最好的方法是不要编写您的 SQL,因此您需要使用 mysql_real_escape_string() 的类似物,您可以这样做通过对值使用占位符,然后在执行语
..
用户等于不可信.永远不要相信不可信用户的输入.我明白了.但是,我想知道何时清理输入的最佳时间是.例如,您是盲目地存储用户输入,然后在访问/使用时对其进行清理,还是立即清理输入,然后存储此“已清理"版本?除了这些之外,也许还有其他一些我没有想到的方法.我更倾向于第一种方法,因为任何来自用户输入的数据仍然必须谨慎处理,“清理"的数据可能仍然在不知不觉中或意外地危险.无论哪种方式,人们认为哪种方法最好,
..