Php CodeIgniter未将URL插入数据库

Php CodeIgniter未将URL插入数据库,php,mysql,codeigniter,Php,Mysql,Codeigniter,我目前正在使用CodeIgniter框架构建一个API。我遇到了一个问题,到处都找不到答案 当前,当调用我的端点来发布数据时,需要将URL保存到我的数据库中,但是插入时URL的格式会被破坏 在我的请求中,URL如下所示: web_url: "https://someurl.com" 但是,在我的数据库中,它看起来是这样的: web_url: "https://someurl.com" https//google.com 此外,当插入很长的URL时,只保存URL的一小部分。以下是一个例子: 原

我目前正在使用CodeIgniter框架构建一个API。我遇到了一个问题,到处都找不到答案

当前,当调用我的端点来发布数据时,需要将URL保存到我的数据库中,但是插入时URL的格式会被破坏

在我的请求中,URL如下所示:

web_url: "https://someurl.com"
但是,在我的数据库中,它看起来是这样的:

web_url: "https://someurl.com"
https//google.com

此外,当插入很长的URL时,只保存URL的一小部分。以下是一个例子:

原创的

https://some.service.com/source/update?user=116&subscription=186248&hash=eyJpdiI6IlpSZytyMXI5NFE2XC80Qmc3MTJMREJHVHgyR2dlQU5NakxEbFFWM2Fsb0hNPSIsInZhbHVlIjoiZWdBT0FrZGFYNkw0cllzcXRRcitvMUFRMDNSaFwveVR6bXVRODlSUFM5MUt6aFQzSDNiczJoRUVzdUZ3VE11MHZjWnFnYzNOUUMyTmxmRnpHNVQ0alF3PT0iLCJtYWMiOiI5NjBlMmI3YTZlMzk2MzU1ZmUxMTI3ZTViODQwMTEyYmQ5NTU4OTc5MTg3Mzk1YzBkZWZkODIxOTQzNTNkYmUyIn0%253D
DB:

https//some.service.com/source/update?user=116&subscripti

在my DB中,URL字段设置为varchar1000

以下是我用来存储URL的代码:

if ($status == "active")
    {
        $user_id = $this->post('user_id');
        $update_url = $this->post('update_url');
        $cancel_url = $this->post('cancel_url');
        $account = array("status" => $status, 
            "user_id" => $user_id, 
            "update_url" => $update_url,
            "cancel_url" => $cancel_url);

            $this->db->insert('accounts', $account);

有什么办法解决这个问题吗?

也许你可以将字段的数据类型更改为text

我通过使用$data=$this->input->post解决了这个问题;获取post请求中的所有数据,而不是获取每个元素


现在似乎正在工作:

您是否尝试使用mysql\u real\u escape\u string函数?是的,我尝试过使用mysql\u real\u escape\u string,但这没有帮助可能您的代码中有错误。也许你应该在你的问题中添加代码。你能发布代码吗?@user1195300你能发布部分代码吗,保存到数据库以便我们提供帮助的那个better@user1195300打印$update\u url时,它是否给出了正确的url?打印update url时,它看起来是这样的:https\/\/some.service.com\/account\/update?user=9&subscripti但在请求中它看起来是这样的https://some.service.com/source/update?user=116&subscription=186248&hash=eyJpdiI6IlpSZytyMXI5NFE2XC80Qmc3MTJMREJHVHgyR2dlQU5NakxEbFFWM2Fsb0hNPSIsInZhbHVlIjoiZWdBT0FrZGFYNkw0cllzcXRRcitvMUFRMDNSaFwveVR6bXVRODlSUFM5MUt6aFQzSDNiczJoRUVzdUZ3VE11MHZjWnFnYzNOUUMyTmxmRnpHNVQ0alF3PT0iLCJtYWMiOiI5NjBlMmI3YTZlMzk2MzU1ZmUxMTI3ZTViODQwMTEyYmQ5NTU4OTc5MTg3Mzk1YZBKZWZKODIXOTQNTNKYMUYIN0%253DSo在传递POST数据期间开始出现问题。您在提交过程中使用过ajax吗?$update_url来自第三方服务,该服务正在将信息发送到我的端点。当我使用他们的模拟器时,它将请求显示为发送完整的url