在下面的代码中,第二行发布$comment
到 Twitter。
当$comment
下面有撇号时,它们在推文中以反斜杠开头。如何摆脱 Twitter 中的反斜杠?
$comment = mysql_real_escape_string($_POST['comment']);
$tweet->post("statuses/update", array("status" => "$comment $fullurl"));
在下面的代码中,第二行发布$comment
到 Twitter。
当$comment
下面有撇号时,它们在推文中以反斜杠开头。如何摆脱 Twitter 中的反斜杠?
$comment = mysql_real_escape_string($_POST['comment']);
$tweet->post("statuses/update", array("status" => "$comment $fullurl"));
所有这些都没有可见的 SQL,因此调用mysql_real_escape_string
. 事实上,既然你说你要在 Twitter 上发帖,我怀疑你这边根本没有涉及任何 SQL (至少那部分没有)。
转义应始终作为最后一件事进行,紧接在 SQL 语句中实际使用变量之前,并且仅针对该 SQL 语句的上下文。如果您的$tweet->post
函数也为您执行一些 SQL,请让该函数执行必要的转义。
也许magic_quotes
在 PHP conf 中设置为 on?见手册
你也可以这样做
$comment = mysql_real_escape_string(stripslashes($_POST['comment']));