0

我遇到了一个问题。我有一个 NSString,我想将此字符串发送到服务器以插入数据库。但是当 NSString 是(例如)时我有问题:

这不是学生。

这个字符串通过这个脚本发送到服务器端:

$value = $_POST["stringvalue"]

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

由于“ isn't”部分,插入查询无法运行并失败。

现在我想转义字符,这意味着“ isn't”将变为“ isn\'t”,以便我可以插入数据库。我想问我该怎么做?

谢谢你。

4

4 回答 4

4

不要依赖输入清理方法,最好使用参数化语句插入数据。了解有关Bobby Tables的更多信息,更具体地了解如何在 PHP中避免它。

输入卫生的一个特殊问题是,您必须在每次插入之前进行,有时可能会意外地进行两次,依此类推。简单地使用参数化语句,从长远来看会更容易。

于 2011-03-01T09:52:05.727 回答
1

您可以在服务器端使用这些 PHP 方法:

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

$value( addslashes )上添加斜杠

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

转义所有特殊字符。添加斜线

我认为这不是 iPhone 的问题。

于 2011-03-01T09:46:36.350 回答
1

这可能会帮助你

将 NSString 中的“”字符替换为“\”(以创建 Unix 路径)

于 2011-03-01T09:39:43.880 回答
1

我猜这是 PHP 而不是 iPhone SDK 的问题?

于 2011-03-01T09:43:46.160 回答