您好,登錄后才能下訂單哦!
php應(yīng)用三個(gè)函數(shù)、兩種選擇來防止sql注入?這個(gè)問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個(gè)問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
1. addslashes($string):用反斜線引用字符串中的特殊字符' " \
$username=addslashes($username);
2. mysql_escape_string($string):用反斜杠轉(zhuǎn)義字符串中的特殊字符,用于mysql_query()查詢。
$username=mysql_escape_string($username);
3. mysql_real_escape_string($string):轉(zhuǎn)義SQL語句中使用的字符串中的特殊字符,并考慮到連接的當(dāng)前字符集,需要保證當(dāng)前是連接狀態(tài)才能用該函數(shù),否則會(huì)報(bào)警告。 不轉(zhuǎn)義%與_
$username=mysql_real_escape_string($username);
1. 使用PDO
$stmt = $pdo->prepare('SELECT * FROM user WHERE name = :name'); $stmt->execute(array(':name' => $name)); foreach ($stmt as $row) { // do something with $row }
2. 使用mysqli
$stmt = $dbConnection->prepare('SELECT * FROM user WHERE name = ?'); $stmt->bind_param('s', $name); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { // do something with $row }
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)php應(yīng)用三個(gè)函數(shù)、兩種選擇來防止sql注入大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。