MongoDB-PHP数据更新
为了将数据从表单保存到MongoDB数据库,我使用以下代码MongoDB-PHP数据更新,php,forms,mongodb,mongodb-php,Php,Forms,Mongodb,Mongodb Php,为了将数据从表单保存到MongoDB数据库,我使用以下代码 if (isset($_POST)) { $m = new MongoClient(); $db = $m->abst; $collection = $db->users; print_r($_POST); if($collection->find(array('user_id' => $pid))) { $collection-
if (isset($_POST))
{
$m = new MongoClient();
$db = $m->abst;
$collection = $db->users;
print_r($_POST);
if($collection->find(array('user_id' => $pid)))
{
$collection->update(array('user_id'=>$pid),$_POST);
}
else
{
$document = array_merge(array('user_id'=>$pid),$_POST);
$collection->insert($document);
}
}
如何检查集合中是否存在用户id?若集合中存在用户id,则数据将更新。否则,新条目将保存到集合中。哪里出错了?试试这个-也许它对你有用 在MongoDB中,如果给定查询不存在记录,并且upsert为
true
,则MongoDB将该记录添加为新记录
$query['user_id'] = $pid;
$object['$set'] = $_POST;
$options = array('w' => true, 'upsert' => true);
$collection->update($query, $object, $options);
试试这个
if($collection->find(array('user_id' => $pid))->count() == 1)
{
$collection->update(array('user_id'=>$pid),$_POST);
}