【发布时间】:2020-10-28 11:50:24
【问题描述】:
我已经安装了php7.2,MongoDB v4.2.8,相关驱动使用pecl,更新了我的php.ini文件,在extension=mongodb.so下extension=mongodb.so行。
我尝试创建一个包含三个文本框字段的简单 HTML Web 表单,如下所示:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Test</title>
</head>
<body>
<h1>Insert to MongoDB</h1>
<form action="insert.php" method="post">
<input type="text" name="name" value="">
<input type="text" name="mobile" value="">
<input type="text" name="email" value="">
<button type="submit" name="button">Insert</button>
</form>
</body>
</html>
当我单击Insert 按钮时,理想情况下这些应该是 snet 到 MongoDB。我有一个 insert.php 文件,它有一行来创建一个新的 MongoClient 对象,如下所示:
<?php
// $mongo = new MongoClient("mongodb://127.0.0.1:27017");
// $manager = new MongoDB\Driver\Manager();
$mongo = new MongoDB\Client("mongodb://<ec2-public-dns-name>");
// var_dump($manager);
?>
我试过MongoClient()、MongoClient(localhost:27017");、MongoClient("<ec2-public-DNS-name>:27017");、MongoClient("<ec2-public-IP>:27017");和MongoDB\Client("mongodb://<ec2-public-dns-name>");
无论我尝试什么,它都会返回 500 错误。如果代码中没有错误,理想情况下它应该返回一个空白页。如果创建了这个对象,那么我将进入创建数据库对象的下一步,然后执行$collection->insert($document) 命令。
【问题讨论】:
-
我读到here 说班级发生了变化。试试
new MongoDB\Driver\Manager(); -
哇。谢谢帕特。它就像一个魅力。节省了我很多时间。 +1 回复。! :)
-
我会将其添加为文档的答案。请接受。很高兴我能帮上忙:)
标签: mongodb amazon-ec2 php-7.2