|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Candidat au titre de Membre du Club
![]() Romain BILLOIRInscription : février 2007 Messages : 21 ![]() |
Bonjour, j'ai une page 'index.php' où la connexion à ma base de donnée est créé:
Code :
Code :
Code :
Fatal error: Exception thrown without a stack frame in Unknown on line 0 Après moult recherche de topic "résolu", le problème étant "une boucle infini d'Exception", je n'ai toujours pas trouvé la solution à mon problème sachant que: Je n'utilises aucune class de gestion de BDD donc pas de gestion d'Exception autre que celle de PDO. Je n'ai aucun throw exception dans mes scripts! La seule fois où une Exception est reçu c'est dans mon try {} catch() {}, mais même en supprimant cette structure, l'erreur persiste. Le pire étant que j'utilise une autre classe, basé sur le même principe de passage de PDO en référence, et que le second marche impeccablement. Merci d'avance pour vos éclaircicement sur le sujet |
||||||
|
|
00
|
|
|
#2 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Un objet PDO n'est pas sérialisable. Vous ne pouvez pas, sans redéfinir les méthodes magiques __sleep (pour l'exclure) et __wakeup (pour la recréer lors de la sérialisation) ajouter un objet Compte en session à cause de l'objet PDO en attribut.
Ce qui, au final, [mettre l'objet PDO en attribut] ne sert à rien (il faut trouver autre chose, comme passer par une solution à base de singleton). |
|
|
00
|
|
|
#3 | |||||
|
Candidat au titre de Membre du Club
![]() Romain BILLOIRInscription : février 2007 Messages : 21 ![]() |
Citation:
J'utilise la même technique ailleurs, par exemple ici dans un script de combat ou chaque personne est un objet: Code :
Code :
|
|||||
|
|
00
|
|
|
#4 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Votre exemple n'a rien à voir : il n'y a pas linéarisation.
À votre avis, il se passe quoi quand vous faites : $_SESSION['foo'] = $bar; ? C'est une (dé)linéarisation opérée par PHP en interne (regardez vos fichiers de session). Au passage extrait du code source (C) de la classe PDO : Code C :
Enfin, les références sur les objets sont inutiles en PHP 5. Ils sont eux-même, en quelque sorte, une référence (explication). |
||
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Romain BILLOIRInscription : février 2007 Messages : 21 ![]() |
Merci pour toutes ces explications, je vais donc me pencher vers une classe de gestion BDD pour gérer les __sleep() __wakeup().
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com