php时间选择器插件与安全过滤参数发生空格冲突

这篇具有很好参考价值的文章主要介绍了php时间选择器插件与安全过滤参数发生空格冲突。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

php参数过滤时,将“ ”作为隐患予以禁止,但是在时间传递时,如2023-09-30 10:00:00作为变量传递时,被禁止。

php安全参数过滤

function safe_replace($str)
{
    $disallow_str = array('%27', '%2527', '*', '"', "'", ';', '<', '>', "{", '}', '\\', ' ', 'and', 'script');
    if (is_array($str)) {
        return $str;
    } else {
        for ($i = 0; $i < count($disallow_str); $i++) {
            if (stripos($str, $disallow_str[$i]) !== false) {
                die('传递参数非法,禁止访问。');
            }
        }
        return $str;
    }
}

JavaScript参数替换方案

在JavaScript中,你可以使用String.prototype.replace()函数来替换字符串中的特定字符。以下是一个封装的函数,将输入的时间字符串中的空格替换为’@':

function replaceSpacesWithAt(time) {
    return time.replace(/ /g, '@');
}

let timeString = "2023-08-29 11:00:11";
let newTimeString = replaceSpacesWithAt(timeString);

console.log(newTimeString);  // 输出: "2023-08-29@11:00:11"

在这个函数中,我们使用正则表达式 / /g 来匹配所有的空格。g标志表示全局匹配,意味着替换所有的匹配项,而不仅仅是第一个。replace()函数将所有匹配的空格替换为’@'。

PHP时间参数逆替换方案

在 PHP 中,你可以使用 str_replace() 函数来替换字符串中的特定字符或子串。以下是一个封装的函数,将输入的字符串中的 “@” 替换为空格:

function replaceAtWithSpace($str) {
    return str_replace('@', ' ', $str);
}

$string = "Hello@World";
$newString = replaceAtWithSpace($string);

echo $newString;  // 输出: "Hello World"

在上述代码中,str_replace() 函数接受三个参数:要查找的字符串、要替换的字符串以及要在其中进行替换的源字符串。函数将返回替换后的新字符串。

在这个例子中,我们将 “@” 作为要查找的字符串,空格作为要替换的字符串,然后将输入的字符串作为源字符串进行替换操作。最后,通过 echo 语句输出替换后的新字符串。


@漏刻有时文章来源地址https://www.toymoban.com/news/detail-730256.html

到了这里,关于php时间选择器插件与安全过滤参数发生空格冲突的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jenkins 利用Build With Parameters 插件实现选择参数构建

    jenkins是CI/CD中部署时候一个重要工具,可以按照我们需求进行配置一些编译打包测试工作,有些是全自动化的,有些需要进行手动参数进行触发。今天给大家分享一下Jenkins使用Build With Parameters插件,实现外置参数进行触发job。 作者:良知犹存 转载授权以及围观:欢迎关注微

    2024年02月12日
    浏览(72)
  • 从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位

    目录 1. 纯文本输入框 2. 存在默认值的文本输入  3. 下拉选择框 4. 输入后下拉选择框 5. 文件上传 6. 时间插件 注意: 1. 这种存在默认值的情况在做自动化测试的时候可以选择不做处理,直接略过该元素,也可以先将默认值清除后再进行输入的方式进行测试 2.如果是下图这种

    2024年02月06日
    浏览(59)
  • java后端该怎样来接受前端日期选择器传入的时间参数

    如果前端使用了日期选择器并且将选择的日期传给了Java后端,那么Java后端可以使用如下方法来接收日期参数: 在后端的方法中声明一个形参,类型为 java.util.Date 或 java.time.LocalDate ,然后在前端的请求中传入的日期参数会被自动封装成相应的日期对象。例如: 在后端的方法

    2024年02月13日
    浏览(43)
  • c++ 信息学奥赛 2047:【例5.16】过滤空格

    解析:本题中使用一个技巧,那就是scanf函数在读取数据时,不读取空格。当遇到空格时就停止了。 以下是一些关于 scanf 函数的重要信息: scanf 函数的原型如下: int scanf(const char *format, ...); 它返回成功读取的项目数。 format 参数是一个格式字符串,用于指定要读取的数据类

    2024年02月05日
    浏览(45)
  • java过滤字符串前后特殊空格字符 NBSP

    在Java中,可以使用 trim() 方法过滤字符串前后的特殊空格字符,但是该方法无法过滤特殊空格字符 NBSP(非断空格)。要过滤 NBSP,可以使用正则表达式来实现。以下是使用正则表达式过滤字符串前后特殊空格字符 NBSP 的示例代码: 在上述代码中,通过定义正则表达式 [s u

    2024年02月16日
    浏览(37)
  • [CTF/网络安全] 攻防世界 file_include 解题详析(php伪协议+convert转换过滤器)

    题目描述:怎么读取文件呢? 思路: 由代码审计可知,可通过filename参数构造POC,来读取check.php POC的构造涉及PHP伪协议,参考链接: 文件包含 | PHP伪协议实战 POC: 回显如下: 猜测被过滤,怎么办呢? 该题涉及到 convert转换过滤器 常见的convert转换过滤器有这两种:

    2024年02月07日
    浏览(67)
  • 【SQL注入】靶场SQLI DUMB SERIES-26空格和注释被过滤

    26题提示所有的空格和注释都会被过滤掉 输入 ?id=0\\\' 判断闭合方式,回显报错可以确定闭合方式为单引号 正常思路是需要通过注释符将后面的语句注释掉,但是这一关的注释符被过滤了,可以考虑使用将后面的语句也闭合的思路来避免引号带来的报错。输入?id=0’\\\'发现不报错

    2024年02月22日
    浏览(37)
  • 开发笔记 | JAVA过滤器Filter实现全局接口入参去除前后空格

    目录 思考过程 遇到的问题 过滤器Filter使用步骤 全局去除入参前后空格代码实现 处理过程中自己造成的一些问题 需求背景: 前端所有的条件查询去除前后空格,如搜 【\\\"   测试    \\\"】后端将其转为【测试】。之前都是前端统一处理的,但是这次要后端处理,那么就得考虑

    2024年02月12日
    浏览(39)
  • vue项目引用海康视频插件(web1.5),el-date-picker下拉选择时间面板会被遮盖问题解决。

    一、海康插件浮窗的层级,会把项目中时间控件中的时间选择面板挡住,导致时间面板显示不全,无法选择时间。如图所示: 二、解决办法:调用API中的JS_ JS_CuttingPartWindow(iLeft, iTop, iWidth, iHeight )方法, 三、效果图 四、API接口文档 大致意思就是当点击时间控件出现时间选择

    2024年02月11日
    浏览(40)
  • php去除字符串两边空格空字符串换行方法

    在PHP中,可以使用以下几种方法去除字符串两边的空格、空字符串和换行符: 使用trim()函数去除字符串两边的空格和空字符串,例如: 使用preg_replace()函数去除字符串中的空格、空字符串和换行符,例如:     3、使用str_replace()函数去除字符串中的空格、空字符串和换行符,

    2024年02月05日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包