编写php文件以将文档添加到mongoDB集合
下面是我的recordSigfox.php文件。现在,我正在从加法条测试它: 单独测试和工作: -第一部分连接到mongoDB并创建testData集合。 -第二部分将十六进制消息解码为其原始组件,即纬度和经度。我想把这些记录在testData中。 -第三部分只是列出了testData的内容 表面发行代码:编写php文件以将文档添加到mongoDB集合,php,mongodb,Php,Mongodb,下面是我的recordSigfox.php文件。现在,我正在从加法条测试它: 单独测试和工作: -第一部分连接到mongoDB并创建testData集合。 -第二部分将十六进制消息解码为其原始组件,即纬度和经度。我想把这些记录在testData中。 -第三部分只是列出了testData的内容 表面发行代码: $document = array( "Latitude" => $lt, "Longitude" => $lg,
$document = array(
"Latitude" => $lt,
"Longitude" => $lg,
);
$manager->$collection->insert($document);
完整代码:
<html>
<head>
<title>Unpack</title>
</head>
<body>
<?php
//connect to DB
$user = "muntean";
require '/var/composer/vendor/autoload.php';
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
echo "Connection to database successfully";
$collection = new MongoDB\Collection($manager, $user, 'testData');
//get data from the address bar: e049d3c02b7f5542
$_data = $_GET["data"];
$coord = unpack('flat/flon', pack('H*', $_data));
$lt = $coord['lat'];
$lg = $coord['lon'];
//echo lt shows: -6.6027679443359
//echo lg shows: 53.374187469482
$document = array(
"Latitude" => $lt,
"Longitude" => $lg,
);
$manager->$collection->insert($document);
//shows contect of testData when not empty
$filter = [];
$options = [];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery("$user.testData", $query);
print("The contents of the collection $user.testData are:");
print_r($cursor->toArray());
?>
</body>
</html>
打开
已修复
让它工作:
try {
$collection->insertOne($document);
}
catch (\Exception $e) {
print("Insert failed.");
print_r($document);
print_r($e);
exit();
}
我这样做了。修复了
让它工作:
try {
$collection->insertOne($document);
}
catch (\Exception $e) {
print("Insert failed.");
print_r($document);
print_r($e);
exit();
}
是我干的。你的问题不清楚。请尝试重新表述。我想在我的集合testData中将lt和lg记录为文档。所以它可能看起来像:。纬度:-6.6027679443359经度:53.374187469482您的问题不清楚。请尝试重新表述。我想在我的集合testData中将lt和lg记录为文档。所以它可能看起来像:。纬度:-6.6027679443359经度:53.374187469482