我正在为荣誉级别的大学项目构建一个简单的管理系统 .
使用Alex Bible驱动程序在MongignDB上构建Codeigniter . 我正在尝试执行一个带有硬编码值的简单插入 .
My Model
$username = "William";
$email = "Test";
$registerdata = array(
"username" => $username,
"email" => $email);
$collection = 'students';
$this->mongo_db->insert($collection, $registerdata);
抛出以下错误:
遇到PHP错误严重性:通知消息:未定义变量:insert文件名:libraries / Mongo_db.php行号:456
和:
遇到PHP错误严重性:警告消息:MongoCollection :: insert():期望参数1为数组或对象,给定文件名为null:libraries / Mongo_db.php行号:456
有任何想法吗?
它在库中调用此函数,如果这有助于任何:
* Insert a new document into the passed collection
*
* @usage = $this->mongo_db->insert('foo', $data = array());
*/
public function insert($collection = "", $data = array()) {
if(empty($collection))
show_error("No Mongo collection selected to insert into", 500);
if(count($data) == 0 || !is_array($data))
show_error("Nothing to insert into Mongo collection or insert is not an array", 500);
try {
$this->db->{$collection}->insert($insert, array('safe' => TRUE));
if(isset($insert['_id']))
return($insert['_id']);
else
return(FALSE);
} catch(MongoCursorException $e) {
show_error("Insert of data into MongoDB failed: {$e->getMessage()}", 500);
}
}
1 回答
你的方法签名是错误的 - 我想知道你是否复制并粘贴了这个库的第2版而没有安装整个东西?新方法是:
在您的应用程序中重新安装库,并检查库文件是否已完整提取 .