2015-12-22 50 views
0

当我试图将我的默认货币更改为dollarwebsite时,我遇到此错误是aso-iyi.com 每当我点击其中一个水平菜单图标(例如非洲版图)时将显示的代码下面 主题以下行现在用的是默认的引导Prestashop 1.6横向菜单和类别菜单问题

[PrestaShopDatabaseException] 

Access denied for user 'cl50-x-prest-xxx'@'%' to database 'cl50-x-prest-xxx' 

CREATE TEMPORARY TABLE ps_cat_restriction ENGINE=MEMORY 

SELECT DISTINCT cp.id_product, p.id_manufacturer, product_shop.condition, p.weight FROM ps_category_product cp 
                INNER JOIN ps_category c ON (c.id_category = cp.id_category AND 
                c.nleft >= 10 
                AND c.nright <= 11 
                AND c.active = 1) 
                INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = cp.id_product 
                AND product_shop.id_shop = 1) 
                INNER JOIN ps_product p ON (p.id_product=cp.id_product) 
                WHERE product_shop.`active` = 1 AND product_shop.`visibility` IN ("both", "catalog") 

throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>'); 
635.   throw new PrestaShopDatabaseException($this->getMsgError()); 

检查我的网站,了解更多适当的解释 www-aso-iyi.com点击非洲打印在横向菜单

威尔非常感谢

回答

0

我如何解决水平菜单不显示,每当我点击它,这将显示数据库异常错误...访问被拒绝。 我首先在我的控制面板托管帐户中确认我的用户数据库名称,数据库名称和密码,位于/public_html/config/settings.inc.php。当它是相同的 和问题仍然存在,我禁用我的水平菜单模块在模块部分,然后我通过我的/public_html/config/defines.inc.php第29行和第36行我将它们设置为false然后我去后退办公室..点击优先,然后点击seo &网址来检查是否有任何冲突的网址,然后我看到一个第三方支付模块页面和订单模块具有相同的网址“订单确认”,然后我改变了第三部分支付网址,因为是第三方模块,我安装它新,然后我启用我的水平菜单模块,然后一切开始工作完美

1

我有同样的问题,发现它的原因是你的mysql用户没有足够的权限。 最初,当我在主机面板中创建我的数据库时,我被提供用FULL权限为数据库创建用户。当然我使用这个选项。但花了几个小时后,这个问题 - 我试图移动我现有的prestashop数据库和prestashop目录和文件本地主机,并检查是否类别列表的作品。这是一个惊喜 - 但这个错误消失了。然后我将本地数据库的转储导出回我的主机,并再次得到相同的错误。

之后,我已经探索主机面板中的菜单添加/编辑mysql用户,并发现我的用户,应该具有数据库的所有权限不具有所有权限。

以下特权失踪:

  • 创建临时表[!如果你看一下你的错误,你可以看到SQL查询将尝试在内存中(ENGINE = MEMORY)创建临时表,但我们确实没有这个权限,并得到拒绝访问错误]
  • 创建常规
  • ALTER常规
  • 创建视图 等

将所有这些权限的对象错误消失后,我可以查看/浏览的产品在我的类别。

如果你使用phpMyAdmin,你可以通过运行下面的SQL查询来检查您的权限:

SHOW GRANTS;

如果你拥有所有必需的权限,输出应该是这样的:

Grants for [email protected]% 
GRANT USAGE ON *.* TO 'yourusername_pshop'@'%' IDENTIFIED BY PASSWORD 'YOURPASSWORDHASH' 
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE ON `yourusername_pshop`.* TO 'yourusername_pshop'@'%' 

希望它会有帮助

PS如果你无法找到如何检查和更改你的mysql用户权限 - 最好联系你的托管服务提供商。