2011-03-01 58 views
0

我遇到了問題。我有一個NSString,我想發送這個字符串到服務器插入到數據庫。但是,當NSString是(例如)我有問題:NSString中的換碼字符

這不是學生。

這串被髮送到服務器端使用這個腳本:

$value = $_POST["stringvalue"] 

insert into stringtable (stringvalue) values ('$value'); 

因爲「isn't」部分中,插入查詢無法運行和失敗。

現在我想轉義字符,這意味着「isn't」將變成「isn\'t」,以便我可以插入數據庫。我想問問我該怎麼做?

謝謝。

回答

4

不要依賴輸入衛生方法,最好是使用只有參數化語句插入數據。詳細瞭解Bobby Tables,更具體地說,如何避免它in PHP

輸入衛生設備的一個特殊問題是,您必須在每次插入前執行此操作,有時可能會意外執行兩次,等等。簡單地使用參數化語句,從長遠來看它會更容易。

1

我想這是PHP的,而不是iPhone SDK的一個問題?

1

您可以使用服務器端的這些PHP方法:

$value = addslashes($_POST["stringvalue"]); 

要在$valueaddslashes

$value = html_special_chars($_POST["stringvalue"]); 

加斜槓轉義所有特殊字符。 addslashes

這不是我想的iPhone問題。