imprimez Posted April 9, 2019 Share Posted April 9, 2019 (edited) Bonjour à tous, Je me trouve face à un problème que je ne suis pas capable de résoudre seul. J'ai un code Erreur 500 en admin et le front qui fonctionne +/- mais n'affiche plus les produits. Le module 155 est blockcategories. Version 1.6.0.9 Énorme merci d'avance de vous pencher sur mon problème 🙂 Voici le message en admin : [PrestaShopException] No access reference in table module_access for id_module 155.at line 2202 in file classes/module/Module.php 2196. self::$cache_permissions[$employee->id_profile][$row['id_module']]['configure'] = $row['configure']; 2197. } 2198. } 2199. 2200. if (!isset(self::$cache_permissions[$employee->id_profile][$id_module])) 2201. throw new PrestaShopException('No access reference in table module_access for id_module '.$id_module.'.'); 2202. 2203. return (bool)self::$cache_permissions[$employee->id_profile][$id_module][$variable]; 2204. } 2205. 2206. /** ModuleCore::getPermissionStatic - [line 2862 - classes/controller/AdminController.php] - [2 Arguments] 2856. $this->modules_list = array(); 2857. foreach ($all_modules as $module) 2858. { 2859. $perm = true; 2860. if ($module->id) 2861. $perm &= Module::getPermissionStatic($module->id, 'configure'); 2862. else 2863. { 2864. $id_admin_module = Tab::getIdFromClassName('AdminModules'); 2865. $access = Profile::getProfileAccess($this->context->employee->id_profile, $id_admin_module); 2866. if (!$access['edit']) AdminControllerCore->getModulesList - [line 1995 - classes/controller/AdminController.php] - [1 Arguments] 1989. $this->list_natives_modules[] = (string)$value; 1990. if ($xmlModule->attributes() == 'partner' && $key == 'name') 1991. $this->list_partners_modules[] = (string)$value; 1992. } 1993. 1994. if ($this->getModulesList($this->filter_modules_list)) 1995. { 1996. foreach ($this->modules_list as $key => $module) 1997. { 1998. if (in_array($module->name, $this->list_partners_modules)) 1999. $this->modules_list[$key]->type = 'addonsPartner'; AdminControllerCore->renderModulesList - [line 1790 - classes/controller/AdminController.php] 1784. { 1785. $this->content .= $this->renderDetails(); 1786. } 1787. elseif (!$this->ajax) 1788. { 1789. $this->content .= $this->renderModulesList(); 1790. $this->content .= $this->renderKpis(); 1791. $this->content .= $this->renderList(); 1792. $this->content .= $this->renderOptions(); 1793. 1794. // if we have to display the required fields form AdminControllerCore->initContent - [line 121 - controllers/admin/AdminLoginController.php] 115. if ($password = Tools::getValue('password')) 116. $this->context->smarty->assign('password', $password); 117. 118. $this->setMedia(); 119. $this->initHeader(); 120. parent::initContent(); 121. $this->initFooter(); 122. } 123. 124. public function checkToken() 125. { AdminLoginControllerCore->initContent - [line 180 - classes/controller/Controller.php] 174. 175. if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className))) 176. $this->initHeader(); 177. 178. if ($this->viewAccess()) 179. $this->initContent(); 180. else 181. $this->errors[] = Tools::displayError('Access denied.'); 182. 183. if (!$this->content_only && ($this->display_footer || (isset($this->className) && $this->className))) 184. $this->initFooter(); ControllerCore->run - [line 190 - override/classes/controller/Controller.php] 184. 185. echo $content; 186. 187. } else { 188. $this->express_start_time = microtime(true); 189. $display = parent::run(); 190. 191. 192. return; 193. } 194. Controller->run - [line 373 - classes/Dispatcher.php] 367. // Execute hook dispatcher 368. if (isset($params_hook_action_dispatcher)) 369. Hook::exec('actionDispatcher', $params_hook_action_dispatcher); 370. 371. // Running controller 372. $controller->run(); 373. } 374. catch (PrestaShopException $e) 375. { 376. $e->displayMessage(); 377. } DispatcherCore->dispatch - [line 54 - admin/index.php] 48. $_POST['controller'] = strtolower($_POST['tab']); 49. if (!isset($_REQUEST['controller']) && isset($_REQUEST['tab'])) 50. $_REQUEST['controller'] = strtolower($_REQUEST['tab']); 51. 52. // Prepare and trigger admin dispatcher 53. Dispatcher::getInstance()->dispatch(); Michaël Edited April 10, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
doekia Posted April 9, 2019 Share Posted April 9, 2019 a priori tu n'es pas superadmin et ton superadmin ne t'a pas donné les droit de manipuler ce module Link to comment Share on other sites More sharing options...
Eolia Posted April 9, 2019 Share Posted April 9, 2019 ou alors souci Presta connu^^ Quel est le module ayant l'ID 155 svp ? (à voir dans la base de données, table ps_modules) Link to comment Share on other sites More sharing options...
imprimez Posted April 9, 2019 Author Share Posted April 9, 2019 (edited) Bonjour Doekia, En fait, je suis le seul admin et c'est le message qui s'affiche en me rendant sur la page d'admin (pas d'accès au champs de connexion). Bonjour Eolia, C'est blockcategories Edited April 9, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
doekia Posted April 9, 2019 Share Posted April 9, 2019 version ? Link to comment Share on other sites More sharing options...
imprimez Posted April 9, 2019 Author Share Posted April 9, 2019 (edited) Oui, je m'attendais à cette question et je suis en cours de recherche de la version. Vu que je n'ai pas accès à l'admin, je cherche un autre moyen de trouver la version que j'utilise. Edit : trouvé : 1.6.0.9 Pour les générations futures, l'info se trouve dans le fichier settings.inc.php Edited April 9, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted April 9, 2019 Share Posted April 9, 2019 ok, donc ce module ne devrait pas poser de souci. Verifiez dans la table ps_module_access si une ligne existe avec cet id_module 155 Link to comment Share on other sites More sharing options...
imprimez Posted April 9, 2019 Author Share Posted April 9, 2019 (edited) @Eolia : Il y a bien une ligne dans ps_module_access avec l'id_module 155 (view 1 et configure 1) Edited April 9, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted April 9, 2019 Share Posted April 9, 2019 Waouh.... pourtant le message dit le contraire: Citation No access reference in table module_access for id_module 155. Link to comment Share on other sites More sharing options...
Eolia Posted April 9, 2019 Share Posted April 9, 2019 Par contre, c'est quoi cette override ??? Link to comment Share on other sites More sharing options...
imprimez Posted April 9, 2019 Author Share Posted April 9, 2019 Aucune idée... Link to comment Share on other sites More sharing options...
Eolia Posted April 9, 2019 Share Posted April 9, 2019 a priori ce serait installé par un module de cache (trucs qui ne servent à rien^^) Link to comment Share on other sites More sharing options...
imprimez Posted April 9, 2019 Author Share Posted April 9, 2019 (edited) Ok, j'en ai un depuis des années. Je vais le désactiver depuis phpmyadmin Edit : J'ai désactivé le module de cache et supprimé les 2 fichiers controller et frontcontroller dans l'override. Il y a déjà un mieux : L'accès aux produits est de nouveau disponible. L'admin ne l'est pas encore. Ce qui est étrange, c'est que l'erreur apparait toujours pour l'override alors que le fichier n'y est plus (et ne s'est pas recréé pas tout seul) Edit 2 : Fausse joie. Certains produits s'affichent mais pas tous : Il y a 1 erreur Ce produit n'est plus disponible. Edit 3 : Il y a 4 lignes pour le module 155 dans la table module_access. C'est normal ? Edited April 9, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted April 10, 2019 Share Posted April 10, 2019 oui, une ligne par id_profile Là, on voit que seul le profil 1 (superAdmin normalement) a tous les droits Link to comment Share on other sites More sharing options...
imprimez Posted April 10, 2019 Author Share Posted April 10, 2019 (edited) Bonjour, Le problème est résolu. Alors, je ne sais pas si c'est quelque chose que j'ai fait ou si ça venait du serveur. La dernière chose que j'ai faite était de vider le cache du site (dossier cache depuis le serveur FTP) et renommer le dossier du module 155 qui me posait problème. Personnellement, je pense qu'il s'est plutôt passé quelque chose le matin au niveau du serveur et que ça a été résolu par le gestionnaire en fin de journée parce que je ne vois pas le rapport entre le message d'erreur et ce que j'ai fait. De plus, comme vous l'avez signalé plus haut, le message indiquait un accès manquant alors qu'il était bien présent dans la table. Grand merci en tout cas pour votre aide ! Michaël Edited April 10, 2019 by imprimez (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now