Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.2k views
in Technique[技术] by (71.8m points)

how to setting the field using Session Variables in $set to Update a Single MongoDB Document in PHP

i'm beginner in php and this is my first time posting a comment.

In MongoDB how do you use Session variable in $set to update a value?

For example, consider a collection school with the following document:

{
    "_id": {
        "$oid": "5fb5a71fc930cc7b988b20ca"
    },
    "SchoolsState": "JOHOR",
    "SchoolsName": "KOLEJ TINGKATAN ENAM PONTIAN",
    "SchoolsCity": "PONTIAN",
    "SchoolsPhoneNo": "11",

}

I want to do something like the below to update where the SchoolsName == $_SESSION["loggeduser_schoolName"], then change the SchoolsPhoneNo:

if (isset($_POST['EditSchoolFormSubmit'])) 
{
  $varSchoolsPhoneNo= $_POST['txtSchoolsPhoneNo'];
  $schoolname = $_SESSION["loggeduser_schoolName"];

  $GoNGetzSmartSchoolFrontEndConnectionString="mongodb://admin:******";
  $GoNGetzSmartSchoolFrontEnd= new MongoDBDriverManager($GoNGetzSmartSchoolFrontEndConnectionString);
  $bulk = new MongoDBDriverBulkWrite(['ordered' => true]);
  $bulk->update(['SchoolsName'=> $schoolname],
                ['$set' => ['SchoolsPhoneNo'=>$varSchoolsPhoneNo]],
                ['upsert' => true]
               );
.
.
.

i have tried using this command

  $bulk->update(['SchoolsName'=>'KOLEJ TINGKATAN ENAM PONTIAN'],
                ['$set' => ['SchoolsPhoneNo'=>$varSchoolsPhoneNo]],
                ['upsert' => true]
               );

it worked very well, but if i use session.. there is no change at all.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...