【问题标题】:Joomla access denied for www-data while using mysql_real_escape_string()使用 mysql_real_escape_string() 时拒绝访问 www-data 的 Joomla
【发布时间】:2012-07-05 20:40:27
【问题描述】:

我在使用 Joomla 开发的代码中使用了 mysql mysql_real_escape_string($somevariable)!接口。 除了这个问题显示错误之外,一切都运行良好。

mysql_real_escape_string(): Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/JOOMLA/components/com_quiz/models/questions.php

我在互联网上搜索并得到以下解决方案: 创建一个$con=mysql_connect(....); 并将其作为mysql_real_escape_string($somevariable,$con) 中的第二个参数传递,效果很好。

问题是我在代码中的每一个地方都使用 Joomla API。所以我可以为此使用默认的 Joomla db 对象$db =& JFactory::getDBO(); 吗??

基本上我想要类似的东西 $db =& JFactory::getDBO(); mysql_real_escape_string($somevariable,$db)

但它显示错误: mysql_real_escape_string() expects parameter 2 to be resource, object given in /var/www/JOOMLA/components/com_quiz/models/questions.php on line 85

谢谢。

【问题讨论】:

    标签: php mysql joomla joomla1.6


    【解决方案1】:

    如果您使用 Joomla 数据库对象进行查询,为什么要使用 mysql 库的转义功能?你不需要。请关注此Joomla wiki entry,它向您展示如何使用其 DBO 创建正确转义的 SQL 查询。

    【讨论】:

    • 谢谢,这正是我要找的 :)
    【解决方案2】:

    改用 $db->quote($somevariable);

    【讨论】:

      猜你喜欢
      • 2013-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-15
      • 1970-01-01
      • 2013-07-26
      • 1970-01-01
      相关资源
      最近更新 更多