dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Bug $user->getrights('')


From: Eldy
Subject: Re: [Dolibarr-dev] Bug $user->getrights('')
Date: Tue, 12 Dec 2006 18:18:11 +0100 (CET)
User-agent: SquirrelMail/1.4.2

> Le mardi 12 décembre 2006 à 11:56 +0100, Eldy a écrit :
>> > Salut,
>> >
>> > Avec la dernière upgrade à partir du CVS, j'ai un bug qui m'empêche
>> > d'aller plus loin que la page d'accueil de Dolibarr:
>> >
>> > <b>Fatal error</b>:  Unknown(): The script tried to execute a method
>> or
>> > access a property of an incomplete object. Please ensure that the
>> class
>> > definition user of the object you are trying to operate on was loaded
>> > _before_ the session was started in
>> > <b>/var/www/dolitest/htdocs/includes/menus/barre_top/eldy_backoffice.php</b>
>> > on line <b>72</b><br />
>> >
>> > Je le poste ici parce que j'ai besoin d'un coup de main actif, pas
>> juste
>> > d'une résolution. J'aimerais bien le résoudre moi-même mais j'ai un
>> > problème évident, c'est que je ne sais pas ce qui a changé
>> dernièrement
>> > dans les scripts en rapport avec la procédure de login.
>> >
>> > Quoi qu'il en soit, la ligne 72 de eldy_backoffice.php contient
>> > $user->getrights(''); qui semble avoir un problème de définition de la
>> > variable $user.
>> >
>> > Or si on reprend le processus dans l'ordre chronologique, index.php
>> > charge pre.inc.php qui charge main.inc.php qui charge master.inc.php.
>> >
>> > main.inc.php fait l'authentification, et utilise $user sans problème.
>> > Ensuite, la contrôle est renvoyé à pre.inc.php qui, lui aussi, utilise
>> > $user sans problème puis renvoie le contrôle à index.php.
>> >
>> > index.php appelle llxHeader() (défini dans pre.inc.php) qui appelle
>> > top_menu() (défini dans main.inc.php). C'est top_menu() qui appelle la
>> > méthode showmenu() (ligne 486) définie dans eldy_backoffice.php et qui
>> > casse tout parce que $user semble ne plus être défini.
>> >
>> > Pourtant, à chaque niveau on appelle global $user;
>> >
>> > C'est bien là mon problème. Si quelqu'un a un tuyau à me filer, je
>> suis
>> > toute ouïe.
>> >
>> > Il s'agit donc d'une version de Dolibarr 2.1 post-beta mise-à-jour
>> avec
>> > une version CVS d'aujourd'hui, sans rien d'exceptionnel.
>> >
>> > Yannick
>> >
>>
>> Peux-tu vide le cache de ton navigateur et effacer tout tes cookies.
>> Si ca ne va pas mieux, quelle version de php utilise-tu ?
>
> OK, j'ai oublié de préciser ça mais je l'ai déjà testé. En fait on
> dirait que le problème n'apparaît qu'à partir du moment où le login
> vient de la session.
> Quand je me logge, je vois la première page. Dès que j'essaie d'accéder
> à la suivante, ça foire.
> En fait tu peux essayer, sur https://dolitest.beeznest.net avec
> demo1/demo1.
> Quand tu nettoies la session, tu est déloggé et tout refonctionne
> jusqu'à la deuxième page.
>
> Yannick

Essaie ceci:

Dans le fichier main.inc.php

La ou tu as l'instruction

$_SESSION["dol_user"]=$user;

tu ajoutes en dessous

$_SESSION["dol_login"]=$user->login;


et la ou tu as

$user=$_SESSION["dol_user"];

tu remplace par

$login=$_SESSION["dol_login"];
$user->fetch($login);



> _______________________________________________
> Dolibarr-dev mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/dolibarr-dev
>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]