IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

récupérer une variable de session après validation de formulaire


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Points : 77
    Points
    77
    Par défaut récupérer une variable de session après validation de formulaire
    bonjour à tous,

    voila lors de la génération de mon formulaire, je crée une collection d'objet bien rangés dans un tableau 2D (T[0][] => les nom en chaine de caractère // T[1][] => les objets )

    lorsque je valide mon formulaire, je récupère bien mon tableau dans sa variable de session, il contient toujours les chaines de caractères en T[0][] mais lorsque je lit en T[1][] le système me répond que mes objets sont incomplet ....

    je ne sais pas comment ça arrive ... mais ça me gène fortement ....


    vous avez une idée pour corrigé cet etat de fait ?

    DrDam

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    Pourrais-tu nous montrer ton formulaire et ton code PHP de reception ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Points : 77
    Points
    77
    Par défaut
    voila mon code qui envoye la donnée

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <?php 
    session_start(); 
    [....]
     
    require("template.php");
    //le template m'écrit le formulaire de saisie avec le bouton submit vers le code de réception (un autre fichier)
    [...]
     
    /*
    $tab_elements est une table 2D
    la colonne 0 contient le nom des objets contenus en T[1][]
    la colonne 1 contient les objets
    */
    $_SESSION['tab_elements']=$tab_elements;
    ?>

    et mon code de réception :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <?php
    session_start();
     
    require("Elements_obj.php);
    
    $tab_elements=$_SESSION["tab_elements"];
    
    echo "<hr>";
    
    $list=count($tab_elements);
    		echo " / list=".$list; /// fonctionne correctement
    	
    	for($i=0;$i<$list;$i++)
    	{
    		echo "//".$tab_elements[$i][0]."//";
    		echo $tab_elements[$i][1]->out_nom();
    		echo "<br><br>";
    	}
     
    // out_nom() est une méthode de classe qui me renvoi la valeur de l'attribut "nom" de l'objet
    ?>

    lorsque j'arrive à mon code de reception il retrouve bien le nombre d'éléments dans le tableau, le contenu de la colonne 0 (avec les noms) mais pour la colonne qui contient les objet il me dit qu'ils sont incomplet :

    "Fatal error: main() [<a href='function.main'>function.main</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure thaht th class definition &quot;Elements&quot; of the object you are trying to operate on was loaded_before_unserialize() gets called or provide a _autoload() function to load the class definition in /home...... "

    et oui j'ai bien chargé le code de ma classe par un require avant.


    et si je rajoute dans mon code de réception :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    for($i=0;$i<$list;$i++)
    	{
    		echo "//".$tab_elements[$i][0]."//";
    		echo $tab_elements[$i][1];
    		echo "<br><br>";
    	}

    il me répond :
    "Catachable fatal error : Object of class __PHP_Incomplete_Class could not be converted to string in /home....."

    le style du message est normal (j'ai pas de fonction "__tostring" ) ... c'est le "__PHP_Incomplete_Class" qui me gène ....

  4. #4
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    Bonjour,

    à première vue il semblerait que tes inclusions de classes se font après l'ouverture de session.

    place ton session_start(); après tes inclusions
    I don't know what will be used in the next world war, but the 4th will be fought with stones. - Albert Einstein
    Pour détourner un avion, il faut monter dedans - Frédéric beigbeder

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Points : 77
    Points
    77
    Par défaut
    NOTÉ : mettre les includes avant les session_start ...


    merci à tous ....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pas moyen de récupérer une variable de session
    Par robomatix dans le forum Langage
    Réponses: 1
    Dernier message: 01/11/2008, 11h45
  2. récupérer une variable de session php dans flash
    Par sanatou dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 14/06/2008, 00h20
  3. Récupérer une variable de session dans une Servlet
    Par Lazarey dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/03/2008, 11h46
  4. Affecter et récupérer une variable de session
    Par vhellers dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 21/08/2007, 17h57
  5. Affecter et récupérer une variable de session
    Par vhellers dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 16/08/2007, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo