0

問題が発生しました。NSStringがあり、この文字列をサーバーに送信してデータベースに挿入したいと思います。しかし、NSStringが(たとえば)の場合、問題が発生します。

これは学生ではありません。

そして、この文字列は次のスクリプトでサーバー側に送信されます。

$value = $_POST["stringvalue"]

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

" isn't"の部分があるため、挿入クエリは実行できず、失敗します。

ここで、文字をエスケープしたいと思います。つまり、データベースに挿入できるように、isn't「」が「」になります。isn\'tどうすればいいですか?

ありがとうございました。

4

4 に答える 4

4

入力サニテーションメソッドに依存しないでください。パラメーター化されたステートメントのみを使用してデータを挿入することをお勧めします。ボビーテーブルの詳細、より具体的にはPHPでそれを回避する方法をご覧ください。

入力サニテーションに関する特定の問題の1つは、すべての挿入の前にそれを実行する必要があることです。場合によっては、誤って2回実行されることもあります。パラメータ化されたステートメントを使用するだけで、長期的には簡単になります。

于 2011-03-01T09:52:05.727 に答える
1

これはiPhoneSDKではなくPHPの問題だと思いますか?

于 2011-03-01T09:43:46.160 に答える
1

これはあなたを助けるかもしれません

NSStringの""文字を"\"に置き換えます(Unixパスを作成するため)

于 2011-03-01T09:39:43.880 に答える
1

サーバー側でこれらのPHPメソッドを使用できます。

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

にスラッシュを追加するには$valueaddslashes

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

すべての特別な文字をエスケープします。addlashes

iPhoneの問題ではないと思います。

于 2011-03-01T09:46:36.350 に答える