我遇到了一个问题。我有一个NSString,我想将此字符串发送到服务器以插入数据库。但是当NSString是(例如)时我遇到了问题:
这不是学生。
使用此脚本将此字符串发送到服务器端:
$value = $_POST["stringvalue"]
insert into stringtable (stringvalue) values ('$value');
由于“isn't
”部分,插入查询无法运行并失败。
现在我想转义字符,这意味着“isn't
”将变为“isn\'t
”,以便我可以插入数据库。我想问一下我该怎么做?
谢谢。
答案 0 :(得分:4)
不要依赖输入卫生方法,最好使用仅参数化语句插入数据。详细了解Bobby Tables,更具体地说明如何避免in PHP。
输入卫生的一个特殊问题是您必须在每次插入之前执行此操作,有时可能会意外地执行两次,依此类推。简单地使用参数化语句,从长远来看会更容易。
答案 1 :(得分:1)
答案 2 :(得分:1)
我想这是PHP而不是iPhone SDK的问题?
答案 3 :(得分:1)
您可以在服务器端使用这些PHP方法:
$value = addslashes($_POST["stringvalue"]);
在$value
(addslashes)
$value = html_special_chars($_POST["stringvalue"]);
逃避所有特殊的角色。 addslashes
我认为这不是iPhone问题。