使用mysql_real_escape_string()时出错

时间:2010-08-19 08:47:05

标签: php mysql string

我的代码 -

require 'database.php';

$title = mysql_real_escape_string($_POST['title']);  //line 48
$cat = $_POST['cat'];
$txtart = mysql_real_escape_string($_POST['artbody']); //line 50
$date = date("d-m-y");

$q = "INSERT INTO tblarticle (art_title, art_cat, art_des, art_date) VALUES ('$title', '$cat', '$txtart', '$date')";

错误 - >
警告:mysql_real_escape_string()[function.mysql-real-escape-string]:在C:\ xampp \ htdocs \ shizin \ admin \ newArticle.php中拒绝用户'ODBC'@'localhost'(使用密码:NO)的访问权限第48行

警告:mysql_real_escape_string()[function.mysql-real-escape-string]:无法在第48行的C:\ xampp \ htdocs \ shizin \ admin \ newArticle.php中建立到服务器的链接

警告:mysql_real_escape_string()[function.mysql-real-escape-string]:在C:\ xampp \ htdocs \ shizin \ admin \ newArticle中拒绝用户'ODBC'@'localhost'(使用密码:NO)访问第50行的.php

警告:mysql_real_escape_string()[function.mysql-real-escape-string]:无法在第50行的C:\ xampp \ htdocs \ shizin \ admin \ newArticle.php中建立到服务器的链接

但是数据会保存在数据库中但是null titile和artbody字段

3 个答案:

答案 0 :(得分:6)

mysql_real_escape_string尝试连接到本地数据库,因此它可以获取为该系统正确转义字符串所需的设置。

您可以通过传递链接标识符作为第二个参数来告诉函数使用哪个连接:

mysql_real_escape_string($string, $link)

答案 1 :(得分:3)

请检查您的MySQL用户名和密码,并确保在mysql_connect中正确输入。根据错误,您没有使用密码运行mysql_connect,这可能会导致这些问题。

答案 2 :(得分:0)

检查database.php连接字符串,MySQL服务器正在运行,因为mysql_real_escape_string需要有效的开放数据库连接才能工作。