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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

php PDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?大佬們有什么好的建議?

php PDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?大佬們有什么好的建議?

阿晨1998 2019-09-12 20:54:41
phpPDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?我看到$pdo防sql注入是先prepare再excute,比如查詢操作和插入操作,數(shù)據(jù)都是前臺(tái)提交過來的$sql="selectpid,id,time,name,pl,znum,cnumfromtestwhereaid=?andstatus=1orderbyiddesc";$pdo->prepare($sql);$pdo->execute(array($_POST['aid']));.....這種沒問題,但是這種$sql="insertintotest(aid,pid,time,name,pl,ip)values({$res['aid']},{$res['pid']},".time().",'".$res['nc']."','".$res['nr']."','{$ip}')";$pdo->exec($sql);如果如上執(zhí)行,怎么防止SQL注入,在沒個(gè)POST參數(shù)上面加quote()嗎?exec可以先prepare嗎?
查看完整描述

2 回答

?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊

首先你的代碼有問題,正確的應(yīng)該是:
$sql="....";
$sth=$pdo->prepare($sql);
$sth->execute();
根據(jù)文檔,PDO::exec的參數(shù)有這樣的描述:查詢中的數(shù)據(jù)應(yīng)該被妥善地轉(zhuǎn)義,說明需要用戶自己去進(jìn)行參數(shù)的轉(zhuǎn)義。PDO防注入是將SQL語句區(qū)分成模版和參數(shù)兩部分,參數(shù)會(huì)被預(yù)處理/轉(zhuǎn)義,然后填充到模版生成最終的SQL語句,參數(shù)的轉(zhuǎn)義可以由PDO處理(使用PDOStatement);也可以由用戶程序處理,那就是你先對(duì)post的數(shù)據(jù)做預(yù)處理后,再直接執(zhí)行。
                            
查看完整回答
反對(duì) 回復(fù) 2019-09-12
  • 2 回答
  • 0 關(guān)注
  • 352 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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