Codeigniter Question - Solve your codeigniter question

  • Home
  • Business
    • Internet
    • Market
    • Stock
  • Parent Category
    • Child Category 1
      • Sub Child Category 1
      • Sub Child Category 2
      • Sub Child Category 3
    • Child Category 2
    • Child Category 3
    • Child Category 4
  • Featured
  • Health
    • Childcare
    • Doctors
  • Home
  • Business
    • Internet
    • Market
    • Stock
  • Downloads
    • Dvd
    • Games
    • Software
      • Office
  • Parent Category
    • Child Category 1
      • Sub Child Category 1
      • Sub Child Category 2
      • Sub Child Category 3
    • Child Category 2
    • Child Category 3
    • Child Category 4
  • Featured
  • Health
    • Childcare
    • Doctors
  • Uncategorized

Thứ Ba, 8 tháng 9, 2015

MongoWriteConcernException. the (immutable) field '_id' was found to have been altered to _id

 Unknown     21:44     No comments   

while making updat in mongodb in codeigniter I have the following error plz help me to solve this issue, Type: MongoWriteConcernException
Message: localhost:27017: After applying the update to the document {_id: ObjectId('55ee98543bd7af780b000029') , ...}, the (immutable) field '_id' was found to have been altered to _id: "55ee98543bd7af780b000029"
Filename: C:\xampp\htdocs\CI\application\models\mongo_model.php
here is my controller code
public function  update()
{
    $userdata['firstname'] = $this->input->post('txtfirstname');
    $userdata['lastname'] = $this->input->post('txtlastname');
    $userdata['email'] =  $this->input->post('txtemail');
    $userdata['password'] = md5($this->input->post('txtpassword'));
    $userdata['_id'] = $this->input->post('hiddenId');
    $collection=  $this->mongo_model->updateuserdb($userdata);
    if ($collection)
    {
        header('location:'.base_url()."index.php/user".$this->index());
    }
}
and model code is
public function updateuserdb($userdata)
{
    $id = $userdata['_id'];
    $collection = $this->mongo_db->db->selectCollection('myfirstCollection');
    $query = $collection->update(array('_id' => new MongoId($id)), array('$set' => $userdata), array('upsert' => FALSE));
    return $query;
}
any help is appreciable, thanks in advance

Answer:
You cannot update the _id field.
Notice that your $userdata object variable contains the _id field and then you proceed to pass that $userdata object as the value to be updated. As a result, you are attempting to update the _id field.
You need to remove the _id from $userdata when doing '$set'=>$userdata.
$collection->update(array('_id'=>new MongoId($id)),array('$set'=>$userdata),array('upsert'=>FALSE));


  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Gửi email bài đăng nàyBlogThis!Chia sẻ lên XChia sẻ lên Facebook
Bài đăng Mới hơn Bài đăng Cũ hơn Trang chủ

0 nhận xét:

Đăng nhận xét

Popular Posts

  • MongoWriteConcernException. the (immutable) field '_id' was found to have been altered to _id
    while making updat in mongodb in codeigniter I have the following error plz help me to solve this issue, Type: MongoWriteConcernException ...
  • How to perform inline editing in Codeigniter PHP using AJAX?
    I saw an example in native PHP which allows inline editing or records and also updates them.  PHP Inline Editing  Now as per this code i h...
  • How to select data from 4 tables
    I want to select data from 4 tables using the Codeigniter framework. The 4 tables have a similar column structure. I want to get the table...
  • Codeigniter URL Routing Issue
    I'm new to codeigniter and want to set my URLs on website currently I'm using version 3.0.1 URL looks like http : //oti.nhmp.net...
  • Query database in helper file Codeigniter 3
    I was trying to add a function to a helper file to collect extra info from the Db. This got errors as the the document id I am trying to u...
  • codeigniter drop down value send view to controller and display results
    I am working with codeigniter project and I have a problem. I have tried several times but still not have a solution. My view has dropdo...

Recent Posts

Unordered List

Pages

  • Trang chủ

Text Widget

Blog Archive

  • ▼  2015 (7)
    • ▼  tháng 9 (7)
      • How to select data from 4 tables
      • MongoWriteConcernException. the (immutable) field ...
      • Query database in helper file Codeigniter 3
      • MySql select field_1 where X = field_2 for all sup...
      • How to perform inline editing in Codeigniter PHP u...
      • codeigniter drop down value send view to controlle...
      • Codeigniter URL Routing Issue

Giới thiệu về tôi

Unknown
Xem hồ sơ hoàn chỉnh của tôi
Được tạo bởi Blogger.

Sample Text

Copyright © Codeigniter Question - Solve your codeigniter question | Design by PHP Tutorial