PHP MongoDB 簡單用戶登錄實現的實例
隨著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
無驗證連接
</div>
</div>
驗證連接
<?php $mongo = new Mongo(); $db = $mongo->selectDB(“test”); ?>
驗證連接
</div>
</div>
默認情況下,MongoDB有一個“test”示例數據庫。或者你也可以創建新的數據庫:
$ db = $ mongo - > Database_Name;
查詢
PHP獲取數據庫列表
</div>
</div>
Mongo在終端使用如下命令也可以達到上面的查詢效果:
<?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在終端使用如下命令也可以達到上面的查詢效果:
</div>
</div>
創建集合(表)
PHP語句創建表
$db->createCollection(“people”,false);
這里的false表示無窮大小,如果為true,則必須指定表的最大空間。
Mongo終端命令創建表:
$db->createCollection(“people”,false);
插入記錄
PHP代碼插入記錄
</div>
</div>
Mongo終端命令插入記錄
b.people.insert({user:”user_name”,password:”password”});
更新記錄
PHP代碼實現更新MongoDB
Mongo 終端命令實現更新
db.people.update({password:”password”},{$set : {user:”demo@uncletoo.com”}});
HTML表單
sesese色
db.listDatabases db.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表單
</div>
</div>
完整的PHP代碼 index.php
<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 Validation if(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"); } } } ?>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!