1

我尝试在我的 php 脚本中使用 addlashes() 命令。但是此函数不会在字符串中的特殊字符之前附加反斜杠()。

有没有其他方法可以在字符串中的特殊字符之前插入 \ ?

这是我的代码:

 function save_params() {
 global $order_status;

 $args = func_get_args();
 foreach ($args as $k => $param)
  if (isset($_REQUEST[$param])) 
$order_status[$param] = mysql_real_escape_string("$_REQUEST[$param]");
  else
   $order_status[$param] = null;
   }

从上面的代码中,title 是用户提供的字符串。这可能包含特殊字符。我提供了 mysql_real_escape 字符串来转义其中的特殊字符。直到这里都很好。但问题是我正在使用 javascript 工具提示来悬停产品的标题。工具提示功能提供如下:

   class="notfree{$g->id}"  
   onmouseover = "tooltip.show('{$w->title}');" 
   onmouseout="tooltip.hide();"

$w->title 是我们用特殊字符串保存到数据库中的标题。Tooltip.show 函数未在标题中显示带有特殊字符的悬停。所以我想在进入数据库之前为“标题”中的特殊字符添加反斜杠。

请帮帮我..我被困在这里

4

2 回答 2

7

使用mysqli_real_escape_string()mysqli::real_escape_string()

mysqli或者更好的是,使用带有or的准备好的语句PDO

于 2012-10-11T06:39:28.767 回答
2

使用 mysqli_real_escape_String - http://php.net/manual/en/mysqli.real-escape-string.php。最好的方法是使用带有mysqliPDO的准备好的语句

于 2012-10-11T06:39:36.403 回答