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

PHP & Base de données Discussion :

Récupérer une valeur


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Récupérer une valeur
    Bonjour tout le monde!
    Je suis en train de réaliser une petite application simple qui me permet de récupérer des informations dans ma BDD.
    Dans ma classe:
    Code : 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    public function RecupXpproById($idCandidatPK)
    			{
     
    				$connexion  = Connexion::creerConnexion();	
     
     
    				$creationRequete = "SELECT * FROM xppro WHERE idCandidatFK = ?";
     
     
     
     
    				$requete = $connexion->prepare($creationRequete);
     
     
    				$donneesRequete = array();
    				$donneesRequete[0] = $idCandidatPK;
     
     
     
    				$executionRequete = $requete->execute($donneesRequete);
     
     
    				$resultatsRequeteXppro = $requete->fetchAll(PDO::FETCH_ASSOC);
     
     
     
    				$_SESSION['NbreXpPro']=count($resultatsRequeteXppro);
     
     
    				// boucle qui permet de récupérer les infos de XPpro en tenant compte de la variabilité du nombre d'expériences
     
    				//On se base sur le nombre d'items (voir ci-dessus) auquel on retire 1 puisque le tableau commence à 0
    				$temp=($_SESSION['NbreXpPro']-1);
     
    				for($i = 0; $i <= $temp; $i++)
    				{
    					//création d'une variable qui permettra de stocker les infos
     
    				$varTemp="id"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['id'];
     
    				$varTemp="nomDuPoste"  . $i ;
    				// et on initialise la valeur de la variable crée en pointant sur le tableau à deux entrées
    				//$i servant de premier pointeur 
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['nomDuPoste'];
     
     
    				$varTemp="employeur"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['employeur'];
     
     
    				$varTemp="dateDebutXp"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['dateDebutXp'];
     
    				$varTemp="dateFinXp"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['dateFinXp'];
     
    				$varTemp="lieuXp"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['lieuXp'];
     
    				$varTemp="descriptionPoste"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['descriptionPoste'];
     
    				$varTemp="lienXp"  . $i ;
    				$_SESSION[$varTemp]=$resultatsRequeteXppro[$i]['lienXp'];
     
     
     
    				}
     
     
     
    					$connexion= null;
    			}
    Quand j'essaie d'accéder aux valeurs que je veux depuis un autre fichier:
    Code : 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    $temp=($_SESSION['NbreXpPro']-1);
            	for($i = 0; $i <= $temp; $i++)
    		{
     
           $varTemp = "id" .$i ;
           $codeHTML .= $_SESSION[ $varTemp];
     
     
           $varTemp ="dateDebutXp"  . $i ;
           $codeHTML .= $_SESSION[ $varTemp];
           $codeHTML .= ' à ';
           $varTemp = "dateFinXp"  . $i ;
           $codeHTML .=  $_SESSION[ $varTemp];
           $codeHTML .= ' ';
           $varTemp ="nomDuPoste"  . $i ;
           $codeHTML .= $_SESSION[ $varTemp];
           $codeHTML .= ' à ';
           $varTemp = "employeur"  . $i ;
           $codeHTML .= $_SESSION[ $varTemp];
           $codeHTML .= '<br/>';
           $codeHTML .= 'poste basé à ';
           $varTemp = "lieuXp"  . $i ;
           $codeHTML .= $_SESSION[ $varTemp];
           $codeHTML .= '<br/>';
           $codeHTML .=  'lien internet : ';
           $varTemp = "lienXp"  . $i ;
           $codeHTML .=  $_SESSION[ $varTemp];
           $codeHTML .= '<br/>';
           $codeHTML .=   'Descriptif du poste : ';
           $varTemp = "descriptionPoste"  . $i ;
           $codeHTML .=  $_SESSION[ $varTemp];
           $codeHTML .= '<br/>';
     
     
     
    		   echo $codeHTML;
          	}
    Je récupère toute les infos sauf celle qui concerne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $varTemp = "id" .$i ;
    $codeHTML .= $_SESSION[ $varTemp];
    Je ne vois pas comment récupérer cette valeur... Quelqu'un peut m'aider s'il vous plait ? =)
    Merci ^^

  2. #2
    Membre averti

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 242
    Points : 354
    Points
    354
    Par défaut
    Pourquoi juste un problème avec celle là et pas les autres ? Je ne le sais pas non plus^^

    Un petit
    devrait te permettre d'y voir plus clair. Vérifie que ta variable de session contient bien ce que tu crois qu'elle contient.
    Tu peux vérifier ça : après l'initialisation et avant l'affichage.

    RQ : c'est un peu spécial comme manière de faire, mettre les résultats d'une requête dans une variable de session pour les afficher ensuite. Pourquoi fais-tu cela ?

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci pour la réponse =)
    Oui en effet, j'ai bien ce que je veux dans ma ma variable $_SESSION.
    J'ai vérifié avec var_dump.

    RQ : c'est un peu spécial comme manière de faire, mettre les résultats d'une requête dans une variable de session pour les afficher ensuite. Pourquoi fais-tu cela ?
    J'ai une section membre, dans laquelle toutes mes données s'affichent sur plusieurs pages. C'est pour ça que je stock toutes les informations dans ma variable $_SESSION pour les afficher sur n'importe quelle page de l'espace membre.

    Ta question à le mérite de me faire voir une autre solution =)
    Je vais passer par une requête sql simple pour récupérer cette valeur là

    Mais si tu as une idée pour mon problème initial, je suis preneur ^^

  4. #4
    Membre averti

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 242
    Points : 354
    Points
    354
    Par défaut
    Pas de quoi

    Pour ton problème initial, difficile à dire, ton code a l'air correct !
    Si dans $_SESSION["id".$i], tu as bien ce que tu veux dans tes deux bouts de code, mais que ton $codeHTML ne contient pas ce qu'il faut...
    tu as essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $varTemp = "id" .$i ;
    var_dump($_SESSION[ $varTemp]);
    $codeHTML .= $_SESSION[ $varTemp];
    Et le var_dump() t'affiche bien ce que tu veux ?

    L'inconvénient que je vois à ta solution, c'est que si jamais les données de la table idCandidatFK sont modifiés (est-ce possible?), ton utilisateur ne le saura pas sans fermer sa session.
    Ta solution a cependant l'avantage d'éviter de faire une requête sur la base de données à chaque fois que l'utilisateur arrive sur une page. Ce qui au niveau performance, est plutôt bien. Cela dit, vu la tête de ta requête (rien de compliqué), ça passerait sans doute inaperçu si tu l'exécutais à chaque fois.
    A toi de voir donc...

Discussions similaires

  1. [XSL]récupérer une valeur de plusieurs fichiers XML
    Par snoop dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 05/02/2006, 00h32
  2. Réponses: 5
    Dernier message: 09/09/2005, 17h51
  3. problème pour récupérer une valeur dans ma bd (débutante)
    Par auryn111 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/08/2005, 17h49
  4. Réponses: 2
    Dernier message: 17/06/2005, 13h38
  5. Réponses: 2
    Dernier message: 11/12/2004, 21h20

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