首頁 後端開發 PHP問題 php mysql轉義函數有哪些

php mysql轉義函數有哪些

Sep 16, 2021 am 09:53 AM
mysql php

php mysql轉義函數有:1、addslashes函數;2、htmlspecialchars函數;3、htmlentities函數;4、mysql_real_escape_string函數等等。

php mysql轉義函數有哪些

本文操作環境:Windows7系統、PHP7.1版,Dell G3電腦

php mysql轉義函數有哪些?

php mysql 轉義函數

#在開發sql查詢小工具時,遇到了POST 提交sql語句去後台查詢資料時,後端接受到帶有< 或> 時的sql語句時,報語法錯誤。

但是把提交的語句印出來,又沒有問題。想想肯定是編碼 或轉義 問題所至。

$sqlQuery = html_entity_decode($_POST["content"]);
$sqlQuery = stripslashes($sqlQuery);[object Object]
登入後複製

下面主要介紹了PHP中常用的轉義函數、安全函數,使用這些函數可以過濾大部份常見的攻擊手段,如SQL注入,需要的朋友可以參考下

1. addslashes addslashes對SQL語句中的特殊字符進行轉義操作,包括('), (“), (), (NUL)四個字符,此函數在DBMS沒有自己的轉義函數時候使用,但是如果DBMS有自己的轉義函數,那麼建議使用原廠函數,例如MySQL有mysql_real_escape_string函數用來轉義SQL。注意在PHP5.3之前,magic_quotes_gpc是預設開啟的,其主要是在$GET, $POST, $ COOKIE上執行addslashes操作,所以不需要在這些變數上重複呼叫addslashes,否則會double escaping的。不過magic_quotes_gpc在PHP5.3就已經被廢棄,從PHP5.4開始就已經被移除了,如果使用PHP最新版本可以不用擔心這個問題。stripslashes為addslashes的unescape函數。

2. htmlspecialchars htmlspecialchars把HTML中的幾個特殊字元轉義成HTML Entity(格式:&xxxx;)形式,包括(&), ('),(“),()五個字元。

& (AND) => &
” (双引号) => " (当ENT_NOQUOTES没有设置的时候)
‘ (单引号) => &#39; (当ENT_QUOTES设置)
< (小于号) => <
> (大于号) => >
登入後複製

htmlspecialchars可以用來過濾$GET,$POST,$COOKIE數據,預防XSS。注意htmlspecialchars函數只是把認為有安全隱患的HTML字元進行轉義,如果想要把HTML所有可以轉義的字元都進行轉義的話請使用htmlentities。 htmlspecialchars_decode為htmlspecialchars的decode函數。

3. htmlentities

htmlentities把HTML中可以轉義的內容轉義成HTML Entity。 html_entity_decode為htmlentities的decode函數。

4. mysql_real_escape_string

mysql_real_escape_string會呼叫MySQL的函式庫函數mysql_real_escape_string,對(\x00), (\n), (\r), (), ('), (\x1a )進行轉義,即在前面加上反斜線(),預防SQL注入。注意你不需要在讀取資料庫資料的時候呼叫stripslashes來進行unescape,因為這些反斜杠是在資料庫執行SQL的時候添加的,當把資料寫入到資料庫的時候反斜線會被移除,所以寫入資料庫的內容就是原始數據,並不會在前面多了反斜線。

5. strip_tagsstrip_tags會過濾掉NUL,HTML和PHP的標籤。

6.stripslashes()

函數刪除 addslashes() 函數所新增的反斜線。

7. 結語PHP自帶的安全函數並不能完全避免XSS,建議使用HTML Purifier

推薦學習:《PHP影片教學

以上是php mysql轉義函數有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP的未來:改編和創新 PHP的未來:改編和創新 Apr 11, 2025 am 12:01 AM

PHP的未來將通過適應新技術趨勢和引入創新特性來實現:1)適應云計算、容器化和微服務架構,支持Docker和Kubernetes;2)引入JIT編譯器和枚舉類型,提升性能和數據處理效率;3)持續優化性能和推廣最佳實踐。

phpmyadmin怎麼打開 phpmyadmin怎麼打開 Apr 10, 2025 pm 10:51 PM

可以通過以下步驟打開 phpMyAdmin:1. 登錄網站控制面板;2. 找到並點擊 phpMyAdmin 圖標;3. 輸入 MySQL 憑據;4. 點擊 "登錄"。

PHP與Python:了解差異 PHP與Python:了解差異 Apr 11, 2025 am 12:15 AM

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

MySQL:世界上最受歡迎的數據庫的簡介 MySQL:世界上最受歡迎的數據庫的簡介 Apr 12, 2025 am 12:18 AM

MySQL是一種開源的關係型數據庫管理系統,主要用於快速、可靠地存儲和檢索數據。其工作原理包括客戶端請求、查詢解析、執行查詢和返回結果。使用示例包括創建表、插入和查詢數據,以及高級功能如JOIN操作。常見錯誤涉及SQL語法、數據類型和權限問題,優化建議包括使用索引、優化查詢和分錶分區。

為什麼要使用mysql?利益和優勢 為什麼要使用mysql?利益和優勢 Apr 12, 2025 am 12:17 AM

選擇MySQL的原因是其性能、可靠性、易用性和社區支持。 1.MySQL提供高效的數據存儲和檢索功能,支持多種數據類型和高級查詢操作。 2.採用客戶端-服務器架構和多種存儲引擎,支持事務和查詢優化。 3.易於使用,支持多種操作系統和編程語言。 4.擁有強大的社區支持,提供豐富的資源和解決方案。

PHP的當前狀態:查看網絡開發趨勢 PHP的當前狀態:查看網絡開發趨勢 Apr 13, 2025 am 12:20 AM

PHP在現代Web開發中仍然重要,尤其在內容管理和電子商務平台。 1)PHP擁有豐富的生態系統和強大框架支持,如Laravel和Symfony。 2)性能優化可通過OPcache和Nginx實現。 3)PHP8.0引入JIT編譯器,提升性能。 4)雲原生應用通過Docker和Kubernetes部署,提高靈活性和可擴展性。

redis怎麼使用單線程 redis怎麼使用單線程 Apr 10, 2025 pm 07:12 PM

Redis 使用單線程架構,以提供高性能、簡單性和一致性。它利用 I/O 多路復用、事件循環、非阻塞 I/O 和共享內存來提高並發性,但同時存在並發性受限、單點故障和不適合寫密集型工作負載的局限性。

PHP和Python:比較兩種流行的編程語言 PHP和Python:比較兩種流行的編程語言 Apr 14, 2025 am 12:13 AM

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

See all articles