2013-11-23 39 views
-7

所以我想知道,如果我需要轉義一個字符串,爲什麼我需要先連接到我的數據庫?

我想是這樣的:

​​3210

但沒有奏效,它需要2個參數(其中一個是$連接)可能Ÿ歐請解釋一下連接數據庫第一的宗旨,然後逃脫它?

我也想知道如何在註冊頁面中有效/應用?

謝謝。

+5

這個問題似乎是題外話題,因爲它不是一個真正的問題:這個信息可以在PHP手冊中找到。 – 2013-11-23 07:36:31

+0

該函數的文檔很明顯地說:「*給定的字符串被編碼爲一個轉義的SQL字符串,**考慮到連接的當前字符集**。*」不同的連接字符集需要不同的編碼。 – DCoder

+1

如果可能,我建議[不要使用* _escape_string](http://stackoverflow.com/a/60496/2864740)。 – user2864740

回答

2

docs

安全:默認字符集

的字符集必須設置或者在服務器級別,或使用API​​函數mysqli_set_charset()爲它影響mysqli_real_escape_string( )。有關更多信息,請參閱字符集的概念部分。

其中有連接的原因:如何逃避你的字符串取決於服務器的字符集。

相關問題