咱們要驗證註冊的帳戶是否是已經存在,咱們須要鏈接數據庫,在數據庫中進行搜索。php
涉及的知識點:
1.後端PHP
2.模擬數據庫的搭建(經過XAMPP) 【將在下一章進行介紹】
1、對數據庫進行鏈接:
<?php
$conn = new mysqli("localhost","root","","marvel");
//這裏經過PHP的對象建立,以後往這個對象中傳參數
第一個參數爲本地主機
第二個參數與第三個參數爲帳戶密碼,第四個參數爲數據庫名稱
if($conn->connect_error) {
echo "數據庫連接失敗".$conn->connect_error;
return;
}else{
// echo "鏈接數據庫成功"
};
//設定PHP讀取數據庫的編碼格式,這樣的話是防止出現亂碼的狀況
$conn->query('set names utf8');
//鏈接數據庫成功以後,咱們須要經過sql語句,在數據庫建立的表中,搜尋你註冊的帳戶名是否存在.
//在此PHP文件中,咱們先是須要提取在以前的HTML文件中的用戶名
$user = $_GET['username'];
$pw = $_GET['password'];
$sql = "
SELECT `id` FROM `users`
WHERE `users`.`username` = '$user'
";
【sql語句是個特別嚴謹的存在,注意引號的使用】
$ret = $conn->query($sql);
【PHP語句書寫代碼的格式真的是讓人匪夷所思,如上文的「->」,它至關於「.」,但願你們能熟悉】
咱們執行$sql語句以後,對象$ret有一個屬性,爲num_rows,咱們經過查看它的值來查詢數據庫中是否有咱們已經存在的用戶名,若是大於0,就存在。
if($ret->bun_rows>0) {
echo "用戶名已經存在"
}else{
//若是不存在,則將該用戶名和密碼插入表中,需再次使用sql語句
【注意的是,咱們以前提取的是用戶名和密碼,在查詢時咱們用到的只是用戶名,可是如今由於用戶名的不存在,一併把密碼存入表中,方便咱們在寫登入頁面時,搜尋用戶名和密碼,由於在登陸頁只有密碼是不夠的】
$sql = "
INSERT INTO `users`
(`id`,`username`,`password`,`age`,`gengder`)
VALUES
(NULL,'$user','$pw','18','male')
";
//再次執行sql語句
$ret = $conn->query($sql);
if($ret) {
echo "註冊成功"
}else{
echo "註冊失敗"
}
}
$conn->close();
//同一時間鏈接數據庫的連接數量是有限的,因此咱們在使用數據庫以後,咱們須要將數據庫關閉。
?>
【本身又當前段和後端的感受是也別的好呀,其實先後端的數據交互遠沒有如此簡單。我彷彿看到了java大叔的微微一笑。咱們只是利用XAMPP本身模擬創建數據庫。利用DOM事件onblur,在失去焦點時經過ajax來發送get請求,向數據庫中搜索。而且ajax發送get是有不少弊端的,如會暴露信息等】複製代碼