Я обновляю свою базу данных MongoDB, используя данные формы, поступающие из скрипта PHP, и может содержать переменное количество элементов для обновления в MongoDB. Для целей тестирования, я попробовал ..MongoDB update() фактически заменяет всю запись в моем коде
$update = '"continent"=>"Asia"'; // one element to be updated, would be multiple eventually
$tracking->sessions->update(array("ts"=>$timestamp,"fb_id"=>$fb_id),array($update));
Я не получаю ошибку, когда я делаю это, однако данные не обновляются в базе данных, запись на самом деле ЗАМЕНИТЬ с этим:
{ "_id" : ObjectId("517048f87a088a7e65000003"), "0" : "'continent'=>'Asia'" }
Оригинал записи:
{ "_id" : ObjectId("517048f87a088a7e65000003"), "fb_id" : "123456", "ts" : "1366316915", "continent" : "North America", "city" : "New York" }
Не уверен, что я делаю неправильно. Как это исправить?
Хорошо поймать! :) Я добавил оператор $ set, однако данные не обновляются в базе данных. Пожалуйста, найдите мой обновленный код. –
Извините, у меня была глупая опечатка в моем коде. Это мое плохое! –
Изменен порядок элементов в записи MongoDB. Последний обновленный элемент появляется первым. Как это исправить? –