mysql转义不在服务器上工作

时间:2013-11-23 22:15:36

标签: php

我创建了登录/注册脚本,在我的localhost上一切正常,但是当我将脚本上传到服务器时,当我使用mysql_real_escape函数时,我得到空字符串。为什么localhost和real server上的此函数不同。这是我的代码

//functions.php

<?php
   function clean($data){
      return mysql_real_escape_string($data);
   }
?>

//otherFile.php

<?php

   include 'functions.php';
   $user = $_POST['username'];
   $pass = encrypt($_POST['password']);
   $rem = $_POST['remember'];

   $user = clean($user);
   $pass = clean($pass);
   $rem = clean($rem);

?>

2 个答案:

答案 0 :(得分:0)

<?php
   function clean($data){
      return mysql_real_escape_string($temp);
   }
?>

您正在传递一个变量并返回另一个

编辑 你在用mysql连接吗? 要使此功能起作用,您需要mysql_connect,而不是mysqli_connect。

使用mysqli_real_escape_string Doc

答案 1 :(得分:0)

mysql_real_escape_string()要求存在有效的数据库连接(它应该是您用于将已清理的数据插入数据库的连接)。如果不存在连接,则会返回false

确保您正在运行数据库连接。