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

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

php PDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?感激不盡

php PDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?感激不盡

慕碼人8056858 2019-09-19 12:14:23
phpPDO中exec函數(shù)怎么防止sql注入,需要提前prepare嗎?我看到$pdo防sql注入是先prepare再excute,比如查詢操作和插入操作,數(shù)據(jù)都是前臺提交過來的$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注入,在沒個POST參數(shù)上面加quote()嗎?exec可以先prepare嗎?
查看完整描述

2 回答

?
HUH函數(shù)

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

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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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