【发布时间】:2017-05-08 12:08:16
【问题描述】:
我目前正在使用远程 ubuntu 16 服务器。我已经在上面安装了 Apache2、PHP 7 和 MongoDB。一切都很好地单独工作,但是,当我尝试使用 PHP 程序连接 MongoDB 时,我收到与数据库和集合创建有关的错误。我想要的只是连接到 MongoDB 并在其中创建一个数据库和集合。我搜索了解决方案,但找不到任何解决方案。
<?php
$m = new MongoDB\Driver\Manager("mongodb://localhost:27017");
echo "connected to database";
$db = $m->myTestDb;
echo'<br/>';
echo "database myTestDb selected";
$collection = $db->createCollection("user");
echo'<br/>';
echo"Collection created successfully";
echo'<br/>';
$document = array(
"id"=>"012123123123121",
"firstname"=>"john",
"middlename"=>'steve',
"lastname"=>"bell",
"dateofbirth"=>"23/08/1990",
"age"=>"27",
"gender"=>"male",
"aadharno"=>"789456123",
"passportno"=>"987654321",
"panno"=>"7539514862",
"address"=>"london",
"email"=>"john@gmail.com",
"contactno"=>"7777777777",
"username"=>"john",
"password"=>"john",
"joiningdate"=>"15/12/2017",
"empid"=>"01",
"department"=>"computer",
"designation"=>"developer"
);
if($collection->insert($document))
{
echo "Collection Created !";
}
//echo"Document inserted successfully";
echo'<br/>';
?>
这些是我遇到的错误
PHP Notice: Undefined property: MongoDB\\Driver\\Manager::$myTestDb in
/var/www/mongo/testmongo.php on line 5
PHP Fatal error: Uncaught Error: Call to a member function
createCollection() on null in /var/www/mongo/testmongo.php:10\nStack
trace:\n#0 {main}\n thrown in /var/www/mongo/testmongo.php on line 10
提前谢谢你!
【问题讨论】:
-
你在php中安装了mongodb驱动吗:php.net/manual/en/mongo.installation.php?
-
@MihirBhende 我按照本教程中的步骤操作tecadmin.net/setup-mongodb-php5-apache2-ubuntu/#
-
如果你做phpinfo(),你能在里面看到mongo驱动吗?
-
@MihirBhende 是的,我确实看到启用了 MongoDB 支持
-
你能试试新的\MongoDB\Driver\Manager("mongodb://localhost:27017");在开头添加了额外的\
标签: php mongodb mongodb-query