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 plusieurs valeurs en Json_decode et php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Alimentation

    Informations forums :
    Inscription : Avril 2014
    Messages : 17
    Points : 14
    Points
    14
    Par défaut Récupérer plusieurs valeurs en Json_decode et php
    Bonjour, alors voilà, je ne comprend pas comment écrire mon script de retour en php.

    je vous met le script PHP donc apres ma requete db et mon javascript qui traite le retour php.

    Moi ce qui me pose problème c'est la partie PHP, Je n'arrive pas a définir le Value du $.each du javascript...

    Ce qui traite mon retour en JS :

    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
      if(data.partners) {
                $(data.partners).each(function(i,v) {
                    addConversationPartner(v); // je réutilise la valeur V par la suite dans cette fonction qui est juste après
                 });
                $('#conv_member_list .active').removeClass('active');
                $('#conv_partner_'+conversation_partner).addClass('active');          
     
              if(data.partners.length == 0 && $('#conv_member_list li').length == 0) {
                $('#conv_members_none').show();
              }
            }
     
    function addConversationPartner(v) {
    	alert('addConversationPartner ='+v.member_id); // je n'arrive pas a récupérer le member_id à partir de v il me met undefined
    	if($('#conv_partner_'+v.member_id).length > 0 || v.me) {  
    		if(v['new'] == 1) {
    			$('#conv_partner_'+v.member_id).addClass('new');
    		}     
    		else{
    			$('#conv_partner_'+v.member_id).removeClass('new');
    		}   
    		return false;
    	}
    mon php
    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
     
     
    		if(isset($_GET['conversation_partners']) && !isset($_GET['begin_conv_with'])){
    			if(isset($_GET['id']) && isset($_GET['offset_history'])){
    				$partnerID = $_GET['id'];
    				$get_all_conversations = "SELECT convID,partnerID,partnerPseudo,date FROM conversations WHERE (userID='".$userID."' AND partnerID='".$partnerID."') OR (userID='".$partnerID."' AND partnerID='".$userID."') GROUP BY convID DESC";
    				$getConversations = $mysqli_conn->query($get_all_conversations);
    				while($conversations = $getConversations->fetch_assoc()) {
    					$result['partners'][] = array($conversations['convID']);
    					$result[0]['member_id'][] = array($conversations['partnerID']);
    					$result['member_username'][] = array($conversations['partnerPseudo']);
    					$result['senddate'][] = array($conversations['date']);
    					$result['image'][] = array('images/nopicture_f.jpg');
    				}
    				// appelle toute la liste de partenaires mais séléctionne un partenaire
    				echo json_encode($result);
    			}
    			}
    merci du coup de main

  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
    Qu'est ce qui ne fonctionne pas dans ton script PHP ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Alimentation

    Informations forums :
    Inscription : Avril 2014
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Qu'est ce qui ne fonctionne pas dans ton script PHP ?
    à la ligne $(data.partners).each(function(i,v) je dois renvoyer le nom d'une colonne dans la valeur 'v' pour pouvoir la traiter dans
    addConversationPartner(v)

    En faite sa devrait donner un truc du genre user->member_id et si je fais mon alert avec v.member_id il m'affiche que c'est indefined...

    en faite dans mon code php 'v' est le nom du tableau et member_id une colonne du tableau sélectionner...

    au lieu de sa, j'ai directement le member_id.

    Sa reste assez important car dans le tableau 'v' j'ai aussi plusieurs colonnes à récupérer du genre : conversation_id, user_id, user_pseudo ect...
    donc le tableau json devrai ressembler à sa :
    {
    tableau
    colonne1,
    colonne2,
    colonne3
    ect...

  4. #4
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Il faut déjà que ta page renvoie un header json.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    header('Content-type: application/json');
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Alimentation

    Informations forums :
    Inscription : Avril 2014
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Oui je l'ai t’inquiète, sa serait une erreur bête de ma part pour le coup lol

  6. #6
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Les erreurs sont souvent bêtes.

    Regarde mon second post sur la discussion suivante https://www.developpez.net/forums/d1...e-fichier-xml/

    Ca peut peut-être t'aider car je récupère dans success le résultat json qui contient plusieurs lignes.
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    function addConversationPartner(v) {
    	alert('addConversationPartner ='+v.member_id); // je n'arrive pas a récupérer le member_id à partir de v il me met undefined
    As-tu vérifié :
    • ce que "v" contient vraiment ?
    • que ce "v" est correctement transmis (à chaque étape du processus) ?


    On ne voit pas non plus où est appelé le script PHP... et traité le retour json...
    Dernière modification par Invité ; 30/04/2017 à 11h26.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Alimentation

    Informations forums :
    Inscription : Avril 2014
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Bonjour,
    alors v contient $result['partners'][] = array($conversations['convID']);,
    ce que j'aimerais de la part de mon code php c'est qu'il y est des noms avant les données.

    par exemple : quand je retourne le data.partners, qu'il me trouve bien tous les $conversations['convID']); trouvés dans la bdd.

    donc sa c'est bon, (testé avec alert(data.partners); il me boucle bien toutes les conversations, mais mon problème vient après avec ce

    $(data.partners).each(function(i,v){ // ici 'v' contient data.partners (en int), mais dans ma fonction suivante : addConversationPartner(v),
    j'envois 'v' mais quand je fais un alert(v.member_id); il m'affiche undefined alors que normalement il devrait me renvoyer le member_id à partir de la convID.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $result['partners'][] = array($conversations['convID']); // = v
     
    $result['member_id'][] = array($conversations['partnerID']); // = v.member_id
     
    $result['member_id'][] = array($conversations['partnerPseudo']); // = v.member_pseudo
    ect...

Discussions similaires

  1. Récupérer plusieurs valeurs d'une liste déroulante
    Par sicilianadev dans le forum Langage
    Réponses: 7
    Dernier message: 23/11/2008, 15h41
  2. Récupérer plusieurs valeurs
    Par loukoum82 dans le forum SQL
    Réponses: 3
    Dernier message: 21/09/2007, 16h07
  3. récupérer plusieurs valeurs dans un champ hidden
    Par karimphp dans le forum Langage
    Réponses: 3
    Dernier message: 07/12/2006, 17h13
  4. [SQL] Récupérer plusieurs valeurs
    Par bogsy15 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 09/08/2006, 10h46
  5. Réponses: 16
    Dernier message: 19/07/2006, 00h16

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