Php mysql\u real\u escape\u字符串在一台服务器上不起作用

Php mysql\u real\u escape\u字符串在一台服务器上不起作用,php,mysql,Php,Mysql,上面的代码在一台服务器中返回空字符串,但在其他服务器中工作正常。为什么会这样?您正在转义字符串 你是说也许是这样 <?php echo mysql_real_escape_string('tientrer') ;?> 如果变量是变量,则转义变量TIENTER 编辑: 然后,可能是服务器不工作,可能是mysql已被弃用,请尝试更改为mysqli或pdo 您没有使用mysql\u connect连接到数据库mysql\u real\u escape\u string需要一个数据

上面的代码在一台服务器中返回空字符串,但在其他服务器中工作正常。为什么会这样?

您正在转义字符串

你是说也许是这样

  <?php echo mysql_real_escape_string('tientrer') ;?>

如果变量是变量,则转义变量
TIENTER

编辑:


然后,可能是服务器不工作,可能是mysql已被弃用,请尝试更改为mysqli或pdo


您没有使用
mysql\u connect
连接到数据库
mysql\u real\u escape\u string
需要一个数据库连接来完成它的工作(因为您是为了数据库而转义的;您是为了数据库查询而转义的,对吧?!)。如果还不存在连接,它将尝试使用标准用户名和密码自动建立连接。在一台服务器上,这个标准密码有效,而在另一台服务器上则无效。

您在这两台服务器上都使用mysql功能吗?因为圣经告诉您了!如果不告诉我们服务器之间的差异,您怎么能期望我们回答?你为什么要这么做呢?servers php version=5.5?如果你使用的是mysqli->mysqli\u real\u escape\u string。如果它的PDO使用准备好的语句。你能发布完整的代码片段,包括到db的连接吗?不,问题是函数总是在一台服务器中返回空字符串。其他服务器也一样。如果服务器不工作,或者mysql不受欢迎,请尝试更改为mysqli。我也尝试过mysqli。它不起作用了怎么不起作用了?你试过在……上出错吗?试试这个
ini\u集合('display\u errors','1')mysql\u real\u escape\u string
时连接到数据库?
     <?php echo mysql_real_escape_string($tientrer) ;?>