PHP MongoDB 简单用户登录实现的实例

来源:互联网 发布:太阳能监控需要网络吗 编辑:程序博客网 时间:2024/06/06 12:45

http://www.uncletoo.com/upfile/201401/2014011429575573.gif

随着NoSQL数据库管理系统的普及,很多软件的数据存储都转向MongoDB数据库。它采用动态模式将数据转化为结构化的JSON文档存储,提高应用程序性能。



本章教程我们学习使用PHP和MongoDB实现简单的用户登录功能。


学习本教程之前,请保证已经存在PHP mongo驱动,如果你还没有,请通过下面的地址下载:


Windows:


http://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/


Linux和Mac


http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/



连接到MongoDB


无验证连接

<?php$mongo = new Mongo();$db = $mongo->selectDB(“test”);?>


验证连接

<?php$mongo = new Mongo(“mongodb://{$username}:{$password}@{$host}”);$db = $mongo->selectDB(“test”);?>


默认情况下,MongoDB有一个“test”示例数据库。或者你也可以创建新的数据库:


$ db = $ mongo - > Database_Name;



查询


PHP获取数据库列表

//获取数据库列表$mongo->admin->command(array(“listDatabases” => 1));//获取test数据库的表$db->listCollections();


Mongo在终端使用如下命令也可以达到上面的查询效果:


db.listDatabasesdb.test.showCollections


创建集合(表)


PHP语句创建表


$db->createCollection(“people”,false);
这里的false表示无穷大小,如果为true,则必须指定表的最大空间。


Mongo终端命令创建表:


$db->createCollection(“people”,false);


插入记录


PHP代码插入记录

<?php$people = $db->people;$insert = array(“user” => “demo@uncletoo.com”, “password” => md5(“demo_password”));$db->insert($insert);?>

Mongo终端命令插入记录


b.people.insert({user:”user_name”,password:”password”});


更新记录


PHP代码实现更新MongoDB

<?php$update = array(“$set” => array(“user” => “demo@9lessons.info”));$where = array(“password” => “password”);$people->update($where,$update);?>


Mongo 终端命令实现更新


db.people.update({password:”password”},{$set : {user:”demo@uncletoo.com”}});


HTML表单


<form action="index.php" method="POST">Email:<input type="text" id="usr_email" name="usr_email"  />Password:<input type="password" id="usr_password" name="usr_password" /><input  name="submitForm" id="submitForm" type="submit" value="Login" /></form>



完整的PHP代码 index.php


<?php$succss = "";if(isset($_POST) and $_POST['submitForm'] == "Login" ){$usr_email = mysql_escape_string($_POST['usr_email']);$usr_password = mysql_escape_string($_POST['usr_password']);$error = array();// Email Validationif(empty($usr_email) or !filter_var($usr_email,FILTER_SANITIZE_EMAIL)){$error[] = "Empty or invalid email address";}if(empty($usr_password)){$error[] = "Enter your password";}if(count($error) == 0){$con = new Mongo();if($con){// Select Database$db = $con->test;// Select Collection$people = $db->people;$qry = array("user" => $usr_email,"password" => md5($usr_password));$result = $people->findOne($qry);if($result){$success = "You are successully loggedIn";// Rest of code up to you....}} else {die("Mongo DB not installed");}}}?>

本文讲述了PHP MongoDB 实现简单用户登录的实例,希望本文能给读者带来灵感,帮助读者解决疑问,感谢您阅读本文。
1 0
原创粉丝点击