0
문서를 업데이트하려고하는데 정확히 예기치 않은 오류가 발생합니다 (셸 업데이트가 제대로 작동 함). 필드가 업데이트되지 않습니다.MongoDB PHP 업데이트가 기존 문서의 오류를 반환합니다.
작동 :
$_POST['title_en'] = 'skyfall';
$editMovie = array('$set'=>array('title_en'=>$_POST['title_en']));
//JSON: {"$set":{"title_en":"Skyfall"}}
$update = $collection->update(array('_id'=>$_POST['_id']), $editMovie);
RETURNS :
이array(5) { ["updatedExisting"]=> bool(false) ["n"]=> int(0) ["connectionId"]=> int(9) ["err"]=> NULL ["ok"]=> float(1) }
셸 명령이 작품 매력 :
당신이 PHP와 MongoDB를에 _id로 작업db.movies.update({"title_en":"skyfall"}, {$set:{"title_en":"Skyfall"}})
그러나 쉘 명령은 PHP 명령과 다릅니다. PHP에서는'_id'를 사용하지만 쉘에서는'title_en'을 사용합니다. 또한'$ _POST [ '_ id']'가 실제 ID로 설정되어 있습니까? –
_id, title_en 및 기타 필드를 반환하도록 find()를 처리합니다. 그런 다음 숨겨진 양식 필드를 사용하여이 _id를 보관합니다. var_dump를 사용하여 모든 값을 검사했는데 문제가없는 것 같습니다. – jakubplus
그리고'$ update = $ collection-> update (array ('title_en'=> $ _ POST [ 'title_en']), $ editMovie); –