2017-06-01 9 views
-2

現在、CodeIgniterフレームワークを使用してAPIを構築しています。私は問題に遭遇し、どこでも答えを見つけることができません。CodeIgniterがデータベースにURLを挿入しない

現在、データを投稿するためにエンドポイントが呼び出されると、URLを自分のDBに保存する必要がありますが、URLのフォーマットは挿入時に破損します。私の要求に

は、URLは次のようになります。

web_url: "https://someurl.com" 

は、しかし、私のDBには次のようになります。

https // google.comまた

、本当に長いURLが挿入されているほんの一部のURLが保存されます。次に例を示します。

オリジナル

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

DB:URLフィールドはvarchar(1000)

として設定されている私のDBに

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

ここで私が使用しています私のコードがあります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); 

これを解決する方法はありますか?

+0

mysql_real_escape_string()関数を使用しようとしましたか? –

+0

はい、私はmysql_real_escape_string()を使用しようとしましたが、それは役に立ちません – user1195300

+0

あなたのコードに何か問題があるかもしれません。たぶんあなたの質問にコードを追加する必要があります。 –

答えて

0

にあなたのフィールドのデータ型を変更することができます。

現在作業中であるように見えます:)

0

多分あなたは、私はというし、個々の要素を取得POSTリクエスト内のすべてのデータを取得するために$data = $this->input->post();を使用してこの問題を解決するために管理text

+0

私はすでにこれを試して、運がなかった – user1195300

+0

@ user1195300あなたのコードの一部、あなたのデータベースに保存するものを投稿することができます –

+0

コードが追加されました:) – user1195300

関連する問題