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 :

Transmettre un objet d'une page à une autre en php


Sujet :

Langage PHP

  1. #1
    Modérateur
    Avatar de Flaburgan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 229
    Points : 3 583
    Points
    3 583
    Par défaut Transmettre un objet d'une page à une autre en php
    Bonjour à tous,
    Je souhaite transmettre un objet d'une page à une autre en php.
    J'aimerais savoir s'il y a une manière propre de le faire, j'ai essayé en utilisant serialize() puis en le passant en GET, mais je galère un peu et je trouve pas ça terrible. Comme je suis sûr que certain ont déjà eu ce problème, je viens poser la question...

  2. #2
    Membre confirmé
    Avatar de Tesing
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2009
    Messages
    272
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2009
    Messages : 272
    Points : 454
    Points
    454
    Par défaut
    Salut,

    Tu pourrais le stocker en variable de session.

  3. #3
    Modérateur
    Avatar de Flaburgan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 229
    Points : 3 583
    Points
    3 583
    Par défaut
    J'avais lu des trucs comme ça effectivement, mais les _SESSION j'avais l'habitude de mettre que des choses en rapport avec le visiteur...

    J'ai donc essayé le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if(!isset($_SESSION['tabnews'])){
    	include_once('db/database.class.php');
    	$db = new Database();
    	$tabnews = $db->getNews();
    	//On place le tableau de news dans la variable session pour qu'il soit accessible de partout
    	$_SESSION['tabnews'] = $tabnews;
    } else {
    	$tabnews = $_SESSION['tabnews'];
    }
    mais quand je fais un var_dump des deux $tabnews, celui récupéré de la bdd est bien un tableau de news
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (array(11) { [0]=> object(News)#18 (6) { ["id":"News":private]=> string(2) "11"  (...))
    alors que le second renvoi ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     array(11) { [0]=> object(__PHP_Incomplete_Class)#1 (7) { ["__PHP_Incomplete_Class_Name"]=> string(4) "News" ["id":"News":private]=> string(2) "11"
    J'ai bien inclus news.class.php au début de mon fichier, et il est normal que les méthodes ne soient pas baladées donc que la classe soit incompléte, le problème c'est que mon parcours qui suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $start = ($numpage-1)*8;
    for($i=$start;$i<min($start+8,$nbNews);$i++){ //on s'arrête si on a affiché 8 news ou si il n'y en a plus
    	echo $tabnews[$i];
    }
    ne marche pas quand $tabnews vient de $_SESSION..

  4. #4
    Membre confirmé
    Avatar de Tesing
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2009
    Messages
    272
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2009
    Messages : 272
    Points : 454
    Points
    454
    Par défaut
    Et en sérialisant/désérialisant l'objet?

  5. #5
    Modérateur
    Avatar de Flaburgan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 229
    Points : 3 583
    Points
    3 583
    Par défaut
    Ça marche mieux en effet, merci beaucoup
    Je ne comprends pas pourquoi ya besoin de faire ça mais bon...

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    normalement dans ton autre page faut inclure les source de la classe avant ton session_start()

  7. #7
    Modérateur
    Avatar de Flaburgan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 229
    Points : 3 583
    Points
    3 583
    Par défaut
    ah ? J'ai toujours entendu dire que le session_start était la première chose qui devait apparaître dans un fichier php.
    M'enfin, je dév rarement en php donc je traîne pas tellement sur les forums non plus ^^

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par Flaburgan Voir le message
    ah ? J'ai toujours entendu dire que le session_start était la première chose qui devait apparaître dans un fichier php.
    M'enfin, je dév rarement en php donc je traîne pas tellement sur les forums non plus ^^
    le session_start dois être placer avant toutes sorties.

  9. #9
    Modérateur
    Avatar de Flaburgan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 229
    Points : 3 583
    Points
    3 583
    Par défaut
    ça marche, merci

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

Discussions similaires

  1. [Débutant] pour affecter une page à une Page Master
    Par zerkos dans le forum VB.NET
    Réponses: 0
    Dernier message: 06/07/2012, 10h45
  2. Réponses: 4
    Dernier message: 20/06/2007, 17h34
  3. [JSP] Passer un objet d'une page à une autre
    Par critok dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 07/07/2006, 14h24
  4. Réponses: 7
    Dernier message: 12/03/2006, 21h29
  5. Réponses: 7
    Dernier message: 06/02/2006, 11h48

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