第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關(guān)于使用預(yù)處理防止sql注入的問題。

關(guān)于使用預(yù)處理防止sql注入的問題。

紫宸丶 2015-12-11 14:41:56
header("Content-type:text/html charset=utf8");$mysqli=new mysqli('localhost','root','***','test');if($mysqli->connect_errno){ ? ?die("Connect Error:".$mysqli->connect_error);}$mysqli->set_charset('utf8');$username=$_POST['username'];$password=md5($_POST['password']);$sql="SELECT * FROM t1 WHERE username=? AND password=?";$mysqli_stmt=$mysqli->prepare($sql);$mysqli_stmt->bind_param('ss',$username,$password);if($mysqli_stmt->execute()) { ? ?$mysqli_stmt->store_result(); ? ?if($mysqli_stmt->num_rows>0){ ? ? ? ?echo "登陸成功"; ? ?}else{ ? ? ? ?echo "登陸失敗"; ? ?}}如以上代碼,為什么給password加上md5數(shù)據(jù)庫就獲取密碼失敗并且登錄失敗,而把md5去掉并且不使用md5加密passwrod就可以登陸成功,這是為什么?
查看完整描述

2 回答

已采納
?
lynhao

TA貢獻81條經(jīng)驗 獲得超57個贊

因為你加密后你的密碼已經(jīng)變成加密后的樣子,要加密的話你就在數(shù)據(jù)庫創(chuàng)表時的字段也給它用md5加密,保持一致

查看完整回答
反對 回復(fù) 2015-12-11
  • 紫宸丶
    紫宸丶
    不行誒,我之前插入該密碼的時候已經(jīng)加密過了,是不是因為md5的加密不可逆的關(guān)系?
  • 紫宸丶
    紫宸丶
    已經(jīng)解決了,不過還是謝謝你的回答!
  • lynhao
    lynhao
    ^_^
?
慕冬雪

TA貢獻16條經(jīng)驗 獲得超3個贊

樓上說的對,因為你數(shù)據(jù)庫中的值并沒有加密,但是你程序中向數(shù)據(jù)庫請求時加密了密碼,這樣當(dāng)然找不到,建議注冊的時候就向數(shù)據(jù)庫中存入加密后的密碼

查看完整回答
反對 回復(fù) 2015-12-11
  • 2 回答
  • 0 關(guān)注
  • 2036 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號