4

特定のレコードがあるコレクション test_posts が 1 つあります。1 または 0 の値を持つ「is_published」というフィールドがあります。これに基づいて、エンド ユーザー側のコンテンツを表示しています。コンテンツを表示できますが、更新のために、MongoDB に従ってクエリにいくつかの変更があります。

サンプルコードは次のとおりです。
$newdata = array('$set' => array("is_published" => $_REQUEST['is_published'] ));
$c->update(array("id" => "1"), $newdata);

特定のレコードのみを更新するためにこのコードを記述します。MySql クエリに似ています。
UPDATE test_posts SET is_published = '" . $_REQUEST['is_published'] ."' WHERE id= '" . $_REQUEST['id'] ."'";

MongoDb クエリは MySql と同じですか? 必要に応じて変更を提案してください。

MongoClient を使用して MongoDB の特定のリクエスト データのレコードを更新する方法を提案してください。

4

1 に答える 1

2
$conn = new MongoClient();
$db = $conn->selectDB("your database name");
$db->your collection name->update(array("_id" => new MongoID("here id mongodb id will come which was auto assign when you insert")), array('$set' => array("your field to update" => "content of update")));

これがお役に立てば幸いです。更新フィールドが見つからない場合、更新クエリは挿入クエリとして機能することに注意してください

于 2016-03-16T08:12:28.127 に答える