2010-03-17 3 views
2

Obtenir l'erreur suivante lorsque vous essayez de démarrer une session:PHP Erreur: Warning: session_start() [function.session-start]: nœud n'existe plus

Warning: session_start() [function.session-start]: Node no longer exists in file.php on line 3

Le script utilise SimpleXML pour analyser XML fichiers provenant d'hôtes distants. Il fonctionne sur un serveur Linux Ubuntu avec PHP 5.2.6.

Quelqu'un a-t-il déjà rencontré ce message ou a-t-il un aperçu de ce que cela signifie?

+0

Que faites-vous exactement? – Gumbo

+0

@Gumbo Moi personnellement ou le script? – Camsoft

+4

Eh bien, puisque nous parlons de votre script ... – Gumbo

Répondre

4

Voir explication au bas de this page

[2009-09-25 11:41 UTC] [email protected] 

Thank you for taking the time to write to us, but this is not 
a bug. Please double-check the documentation available at 
http://www.php.net/manual/ and the instructions on how to report 
a bug at http://bugs.php.net/how-to-report.php 

Cannot serialize object wrapping 3rd party library structs. Must 
serialize the xml (to a string) and store that to session and reload the 
xml when restoring from session 
+1

Exemple ici: http://www.php.net/manual/fr/book.simplexml.php#87083 – Rabbott

+0

merci! Cela me rendait fou. bonne chose à savoir. – split19

+0

L'exemple explique très bien le problème, merci! –

2

Vous ne pouvez pas stocker de résultats SimpleXML dans une session. Convertissez-le en tableau ou étendez-le avec des méthodes magiques de sillage et de sommeil.

2

J'ai eu le même problème et a obtenu une solution sur le site http://www.ossramblings.com/simple_xml_breaks_sessions

En fait, la session ne fonctionne pas bien, tout en essayant de stocker des données XML, donc il suffit de convertir les données XML (je veux dire des objets) à une chaîne comme ci-dessous:

$temp_max_markers = (string)$Response->owner->max_markers; 

$_SESSION['max_markers'] = $temp_max_markers; 
0

également u ne peut pas utiliser le xml nom de la session comme .. $_SESSION[xml];

0

Vous pouvez modifier la clé de chiffrement dans le fichier de configuration dans le dossier d'application dans CodeIgniter cela fonctionne pour m e ..