繁体   English   中英

mongodb和使用php在集合中插入值

[英]mongodb and inserting values in collection with php

与Mongodb连接后,我创建了数据库项目=>使用项目,然后创建了集合=> db.createCollection(“ WaterMoneteringSystem”,{capped:true,size:2147483648,max:20000})

然后我想通过php将值输入到集合中,所以这是我编写的代码

<?php
$d=$_POST['dte'];
$t=$_POST['tme'];
$PH=$_POST['ph'];
$TU=$_POST['tbdity'];
$RO=$_POST['RdcdOxdtn'];
if($PH>14 || $PH<0)
{
echo "error";
}
else
{
$m = new MongoClient();
echo "Connection to database successfully";
select a database
$db = $m->project;
echo "Database project selected";
$collection = $db->WaterMoneteringSystem;
echo "Collection selected succsessfully";
$document = array(
"Date" => "$d",
"Time" => "$t",
"PH" => "$PH",
"Turbidity" => "$TU",
"Reduced Oxidation" =>"$RO"
);
$collection->insert($document);
echo "Document inserted successfully";
}
?>

但这不起作用

谢谢

好的,我重新创建了您拥有的内容,它似乎对我有用。 这是我使用的确切代码:

$mongo = new MongoClient(); $db = $mongo->project;

$d = '2014-04-14';
$t = '18:14:00';
$PH = 7;
$TU = 'Huh What?';
$RO = 'yes';


if(($PH > 14) || ($PH < 0)) {
    echo "error";
}
else {

    $document = array(
        "Date" => $d,
        "Time" => $t,
        "PH" => $PH,
        "Turbidity" => $TU,
        "Reduced Oxidation" => $RO
    );


    $db->WaterMoneteringSystem->insert($document);


    echo "Document inserted successfully";

}

当我进入数据库时​​,一切都应该存在:

MongoDB屏幕截图

实际上,我所做的唯一一件事就是从变量中删除了引号,只是改变了它连接到数据库的方式。 但是,这些都不应该影响任何事情,所以我不确定。 尝试将我的代码粘贴到脚本中,看看是否可行。

但是,我确实回过头来并使用了您的确切代码(除了注释掉select a database行并定义了我自己的$_POST变量,因为我没有它们),它也插入了记录。

话虽这么说,但脚本的另一部分一定很奇怪。 您可以从数据库中选择记录吗? 意思是,您的连接设置是否正确,而无需指定主机,用户名或密码? 我建议,检查那里的问题。

另外,您是否在页面上收到“文档插入成功”消息? 当我运行您的确切代码时,我得到了:

Connection to database successfullyDatabase project selectedCollection selected succsessfullyDocument inserted successfully

检查并确保您的信息也是如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM