在下面的代码中,第二行将$comment
发布到Twitter。
当下面的$comment
包含撇号时,它们会在Tweet中以反斜杠开头。我如何摆脱Twitter中的反斜杠?
$comment = mysql_real_escape_string($_POST['comment']);
$tweet->post("statuses/update", array("status" => "$comment $fullurl"));
答案 0 :(得分:3)
所有这些都没有可见的SQL,因此调用mysql_real_escape_string
没有意义。事实上,既然你说你在Twitter上发帖,我怀疑你身边是否有所有的(至少不属于那个部分)。
在SQL语句中实际使用变量之前,应该始终将Escaping作为最后一件事,立即,并且仅用于该SQL语句的上下文。如果你的$tweet->post
函数也支持一些SQL,那么让该函数执行必要的转义。
答案 1 :(得分:2)
在PHP conf中,magic_quotes
可能设置为on?见manual
你也可以
$comment = mysql_real_escape_string(stripslashes($_POST['comment']));