js操作數(shù)據(jù)庫(kù)實(shí)現(xiàn)注冊(cè)和登陸的簡(jiǎn)單實(shí)例
自從node-js出現(xiàn)之后,不只是java,php等后端語(yǔ)言可以操作數(shù)據(jù)庫(kù),進(jìn)行內(nèi)容的增刪改查,javascript簡(jiǎn)本語(yǔ)言同樣具備了該項(xiàng)技能,而且在node下,js具備了很強(qiáng)的操作性和代碼的閱讀性,讓晦澀難懂的代碼變得更加的清晰了,下面我簡(jiǎn)單介紹javascript如何操作數(shù)據(jù)庫(kù)進(jìn)行登錄注冊(cè)功能的實(shí)現(xiàn)。
首先,頁(yè)面部分就直接省略了,我們默認(rèn)已經(jīng)安裝數(shù)據(jù)庫(kù)了,開(kāi)始從注登錄說(shuō)起。
exports.login =function(req,res){
var username=req.body.uname;
var pwd=req.body.psd;
var sql="select * from student where username=? and password=?";
var con=dbcon.getCon();
con.query(sql,[username,pwd], function (err,result) {
if(!err){
if(result.length==0){
res.json(0);
}else{
res.json(1)
}
}else{
console.log(err)
}
con.destroy()
})
};
首先,點(diǎn)擊登錄按鈕,我們跳轉(zhuǎn)到登錄頁(yè)面,通過(guò)獲取到用戶輸入的input值,通過(guò)下標(biāo)的方法取得輸入的username和pwd的值,通過(guò)連接數(shù)據(jù)庫(kù),判斷回調(diào)函數(shù)返回的狀態(tài)值,如果成功,給予提示用戶注冊(cè)成功,緊接著進(jìn)行頁(yè)面的跳轉(zhuǎn),如果出現(xiàn)異常,給出提示,并相應(yīng)的跳轉(zhuǎn)到錯(cuò)誤頁(yè)面,在此處我們可以使用try{}catch(){}方法進(jìn)行攔截,打印出具體的錯(cuò)誤信息。
緊接著,我們?cè)賮?lái)講一下注冊(cè)的操作,顧名思義,注冊(cè)就是將原本不存在于數(shù)據(jù)庫(kù)的用戶資料通過(guò)數(shù)據(jù)庫(kù)的insert語(yǔ)句插入數(shù)據(jù)庫(kù)中,道理和登錄有些類似,首先,我們需要輸入需要注冊(cè)的信息,然后獲取到這些信息,然后再發(fā)送一個(gè)異步請(qǐng)求驗(yàn)證數(shù)據(jù)庫(kù)是否有這些資料,如果沒(méi)有的話就直接創(chuàng)建這些資料。下面我們使用代碼來(lái)說(shuō)明這些原理。
exports.regists=function(req,res,name,password){
var sql="insert into stuinfo(name,password) values(?,?)"
conn.query(sql,[name,password],function(err,result){
if(result.affectedRows==1){
req.session.name=name;
res.sendfile('./public/view.html')
}
})
}
exports.login=login;
首先,我們將注冊(cè)這個(gè)方法進(jìn)行封裝,然后通過(guò)node的exports進(jìn)行導(dǎo)出,便于被調(diào)用,在這個(gè)方法里面,通過(guò)占位符的方法插入username和password,然后通過(guò)數(shù)據(jù)庫(kù),將獲取的參數(shù)值進(jìn)行插入,通過(guò)回調(diào)函數(shù)狀態(tài)碼的判斷,確認(rèn)插入成功,并在成功之后將我們注冊(cè)成功的session顯示在頁(yè)面作為標(biāo)識(shí)。
以上就是js簡(jiǎn)單的登錄注冊(cè)的代碼,其中涉及到的知識(shí)點(diǎn)不只是上述提到的,還包括了數(shù)據(jù)庫(kù)的基本知識(shí),了解基本的sql查詢語(yǔ)句,并能通過(guò)js成功連接數(shù)據(jù)庫(kù)。我們始終相信萬(wàn)丈高樓平地起,只要去哦們一步一個(gè)腳印,總有一天,可以成為自己乃至別人眼中的高手。
以上這篇js操作數(shù)據(jù)庫(kù)實(shí)現(xiàn)注冊(cè)和登陸的簡(jiǎn)單實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript雙向鏈表實(shí)現(xiàn)LFU緩存算法
本文主要介紹了JavaScript雙向鏈表實(shí)現(xiàn)LFU緩存算法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
JavaScript實(shí)現(xiàn)檢查頁(yè)面上的廣告是否被AdBlock屏蔽了的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)檢查頁(yè)面上的廣告是否被AdBlock屏蔽了的方法,其實(shí)就是利用JS檢測(cè)div的名稱和樣式名稱實(shí)現(xiàn),需要的朋友可以參考下2014-11-11
JavaScript toUpperCase()方法使用詳解
這篇文章主要為大家詳細(xì)介紹了JavaScript toUpperCase()方法的使用技巧,感興趣的小伙伴們可以參考一下2016-08-08
微信小程序?qū)崿F(xiàn)購(gòu)物車頁(yè)面
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)購(gòu)物車頁(yè)面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
微信小程序購(gòu)物商城系統(tǒng)開(kāi)發(fā)系列-目錄結(jié)構(gòu)介紹
這篇文章主要介紹了微信小程序購(gòu)物商城系統(tǒng)開(kāi)發(fā)系列-目錄結(jié)構(gòu)介紹,有興趣的可以了解一下。2016-11-11
js時(shí)間比較 js計(jì)算時(shí)間差的簡(jiǎn)單實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇js時(shí)間比較 js計(jì)算時(shí)間差的簡(jiǎn)單實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
JS簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊跳轉(zhuǎn)登陸郵箱功能的方法
這篇文章主要介紹了JS簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊跳轉(zhuǎn)登陸郵箱功能的方法,涉及js針對(duì)hash表的遍歷與頁(yè)面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-10-10

