2017-06-16 5 views
1

で働いていない更新方法は、私はCodeIgniterの更新方法を経由してデータベース内のフィールドの更新に問題があるのCodeIgniter

マイコントローラ:

 $database = array(
     'last_location' => $url[5]."-".$url[6], 
     'last_date_location' => $url[3]." ".$url[4], 
    ); 

     $user = $this->API_model->get_user($url[0]); 

     print_r($user); 

     if ($this->db->update('user', $database , $user['id']) === true) { 
     print_r($database); 
     echo "MEI_TRUE"; 
     }else { 
     echo "MEI_FALSE"; 
     } 

ブラウザの復帰データベースが正常に更新さ意味が、私は、データベースをチェックするときMEI_TRUE in phpmyadmin何も変更なし:(

何が問題なの?

答えて

1

それが動作するはずのに役立ちます、以下のような何かを試すことができます。

$database = array(
     'last_location' => $url[5]."-".$url[6], 
     'last_date_location' => $url[3]." ".$url[4], 
    ); 

     $user = $this->API_model->get_user($url[0]); 

     print_r($user); 
     $query = $this->db->where('id',$user['id']) 
         ->update('user', $database); 
     if ($query) { 
     print_r($database); 
     echo "MEI_TRUE"; 
     }else { 
     echo "MEI_FALSE"; 
     } 
+0

お手伝いをしてうれしく思います。良い日 – molagbal

1

あなたは

$database = array(
     'last_location' => $url[5]."-".$url[6], 
     'last_date_location' => $url[3]." ".$url[4], 
    ); 
$this->db->where('id', $user['id']); 
$this->db->update('user', $database); 

希望これはあなたが

1

ものは何ですか - 更新しますか? 更新クエリの3番目のパラメータは、あなたがあなたの例はかなり危険ですが、

、(Dhaneshは、すでに述べたように)より良い方法は以下のようになり、次の

if ($this->db->update('user', $database , "id = ".$user['id']) === true) 
{ 
    print_r($database); 
    echo "MEI_TRUE"; 
} 
else 
{ 
    echo "MEI_FALSE"; 
} 

を試みる文字列としてwhere句を有効にすることができます:詳細については

$blnUpdateSuccess = $this->db->where("id", $user['id'])->update("user",$database); 

if ($blnUpdateSuccess) 
{ 
    print_r($database); 
    echo "MEI_TRUE"; 
} 
else 
{ 
    echo "MEI_FALSE"; 
} 

ドキュメントを読んhere

関連する問題