Bernardo, si tu mets $userobj=new erozia_user(); ligne 40 avant l'include, est-ce que ça passe ? (j'espère que non, mais bon... on ne sait jamais...)
Bernardo, si tu mets $userobj=new erozia_user(); ligne 40 avant l'include, est-ce que ça passe ? (j'espère que non, mais bon... on ne sait jamais...)
Tu viens de faire quoi ?oui, je viens de le faire, même resultat
J'ai pas étudier en détail tout tes include et require, mais je soupconne fortement que le problème viens de la
Si un problème ne trouve pas de solution, c'est qu'il n'y à pas de problème
c'est ce que j'etais en train de faire, ca ne fonctionne pas et j'obtiens une autre erreur qui me dit que l'objet n'exite pas
Fatal error: Call to a member function on a non-object in f:\indeeplight.net\demo\news\news_bibliotheque\scripts\erozia_liste_sender_ticket.php on line 15
par contre en ecrivant ceci juste avant l'include de la ligne 40
je vois que l'objet existe mais que je ne peux pas l'utiliser dans le fichier inclus a la ligne 40
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $userobj= new erozia_user(); var_dump($userobj);
effectivement Eric93, si je prend la totalité du fichier inclus a la ligne 40 et que je remplace l'include, ca marche.
Mystere, pourquoi?
Je dois partir, pas le temps d'étudier en détail, mais le problème viens de tes include et require, cherche de ce coté la
Si un problème ne trouve pas de solution, c'est qu'il n'y à pas de problème
Merci pour tout en attendant,
je viens de verifier, le fichier est inclus correctement, la seule difference, c'est que ca ne marche pas depuis le fichier inclus et ca marche si le code est en dure a la place de l'include.
Y a t'il un bug existant au niveau des incluse?
Je sais que depuis PHP4 il n'y a plus de différences, mais si tu mets require au lieu d'include ligne 40, as-tu le même résultat ?
En fait, j'ai lu un truc dans la doc php qui dit que les variables sont adapté au contexte dans lequel elle sont importeés.
je pense que la porté des variables est modifiée par l'include et ca marche plus
faut que je verifis ca demain
Non, il y a une grande différence : require génère une erreur fatale, ce qui confirme ou infirme la bonne inclusion. Personnellement, je ne fais que des require_once, et j'utilise très rarement les include, car la plupart du temps le code dépend d'une inclusion réussie.
Normalement ça aurait dû coincé avant, mais je pense qu'il serait bon, de rendre au moins le constructeur public. Je crois que sans déclaration explicite, les functions sont privées. Et c'est de toute façon une bonne habitude à prendre de spécifier private ou public.
- Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
- Merci d'utiliser les balises de code (# dans l'éditeur)
- N'oubliez pas de vous servir des boutons , et
S.N.A.F.U
oui, oui, il y a cette différence, mais ce n'est pas ce qui m'interessait dans mon propos. La différence en question était require inclus quoiqu'il arrive (donc avant interprétation) et include peut être soumis à condition (donc inclusion pendant le déroulement du code).
Bernardo. Toujours pour tester, si tu remplace le require_once qui inclus ta classe par un require, juste pour voir (vu qu'on ne connait pas tout le code... on ne sait jamais)
Bonjour à tous,
En remplacant le require_once par require, le resultat est le même.
Il faut quand même que j'explique une chose.
Dans le script de base la fonction afficher_box est appeler pas mal de fois, en fonction des boites a afficher sur l'ecran.
A chaque fois quelle est appelée, il peut y avoir un script venant d'une biblliotheque qui est inclus et qui s'execute a ce moment.
Jusqu'a maintenant, a l'affichage de la page, tous les scripts sont inclus correctement et s'execute.
Il n'y a que celui avec l'instanciation de l'objet qui me donne l'erreur
cannot instantiate non-existent class: erozia-user
par contre comme le l'expliquais plus haut, si je remplace l'include par le code en dur, ca marche.
Ce que je constate par le message d'erreur, c'est qu'avec l'include le script se comporte comme s'il ne pouvait voir la class importé par require_once ou require.
Il y a des fois ou je suis vraiment trop con.
J'ai trouvé pourquoi ca ne fonctionne pas.
Au depart, quand la page se charge, le script en question n'est pas inclus.
celui ci est inclus au moment ou je click sur un petit bouton qui declenche une fonction ajax.
Donc la effectivement cela ne peut que ne pas fonctionner si le require est hors de ce script.
Desolé de vous avoir fait chercher pour rien, il y a des fois ou on est aveuglé par une erreur sans voir le detail tres simple qui est en evidence
C'est rassurant on peut continuer à utiliser les includes alors
Bonne continuation
stf
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager