gpt4 book ai didi

php - 我正在提交一个表单,其中包含一个包含 URL 字符串的字段,该字符串在表单提交和进入 MYSQL 数据库之间会丢失格式

转载 作者:行者123 更新时间:2023-11-29 10:02:08 24 4
gpt4 key购买 nike

我有一个使用 Codeigniter 框架用 PHP 编写的简单表单。表单提交的字段之一包含表单“http://somedomain.com/web/Api/v2.3/offers.json”的 URL。 然后将该字段和表单组中的其他字段插入到 MYSQL 数据库表中。

问题是,一旦插入到列字段中,它就会丢失所有格式,因此表中最终的结果如下所示:

httpsomedomaincomwebApiv23offersjson

这行代码来自 View 模块中字段的表单类:

这是来自 Controller 模块的代码行,它获取表单数据并将其打包到数组中,为模型模块将其转换为 SQL 字符串做好准备:

'api_url' => $this->cleanInput($this->input->post('api_uri')),

通过运行一个名为 Burpsuite 的应用程序(它基本上是一个在我的本地计算机上运行的代理应用程序),我在提交表单后截获了字符串,据我所知,URL 的格式/编码正确,如下所示:

api_uri=http%3A%2F%2Fsomedomain.com%2Fweb%2Fapi%2F2.3%2Fjson&submit=

但是检查 MYSQL 数据库中的字段,条目如下所示:

httpsomedomaincomwebapi23son

因此,在提交表单和插入数据库之间的某个时间,字符串会丢失其 url 编码。

作为检查,我使用 MYSQL comnandline CLI 将 url 格式的字符串插入到数据库字段中,并且插入的字符串完美地保留了 URL 格式。

任何想法/帮助将不胜感激

最佳答案

我认为您已经在配置中启用了 global_xss_filtering TRUE,试试这个

'api_url' => $this->input->post('api_uri', TRUE); 

它会自动清理输入

关于php - 我正在提交一个表单,其中包含一个包含 URL 字符串的字段,该字符串在表单提交和进入 MYSQL 数据库之间会丢失格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52698446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com