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

jQuery Discussion :

recupération objet json


Sujet :

jQuery

  1. #1
    Membre éclairé Avatar de fahdijbeli
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juin 2012
    Messages : 281
    Par défaut recupération objet json
    bonjour,je suis débutant
    j'ai un probléme de récupération des données json voici le code du serveur qui retourne mon json :
    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
     
    public function voirAction($page)
        {     $request = $this->container->get('request');
     
            // On récupère le repository
              $repository = $this->getDoctrine()
                               ->getEntityManager()
                               ->getRepository('data\baseBundle\Entity\Customers');
     
     
              $nb_Customers = $repository->getTotal();  
              $nb_Customers_page = 4;
              $nb_pages = ceil($nb_Customers/$nb_Customers_page);
              $offset = ($page-1) * $nb_Customers_page;
              $Customers = $repository->findBy(
                array(),                 
                array(), 
                $nb_Customers_page,       
                $offset                  
            );
         if($request->isXmlHttpRequest()){
              $response = new Response(json_encode(array('nb_pages' =>$nb_pages,'page'=>$page,'Customers'=>$Customers )));
     
            // Ici, nous définissons le « Content-type » pour dire que l'on renvoie du JSON et non du HTML.
               $response->headers->set('Content-Type', 'application/json');
     
               return $response;
    voici comment j'ai récupéré mes données :
    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
     
    $.fn.getDataJsonForPage = function(iPage){
                 $.ajax({
                      url: '../Voir/'+iPage,
                      type: "GET",
                      dataType: "json",
                      cache: false,
                      success: function(data) {
                     for (customer in data.Customers)
                         {$("#raed").html(customer.name);
                           alert(customer.name);  
                         }
     
     
                                               },
                      error:function(){
                      alert('erreur');}                         
                        });
            };
    je veux récupérer un objet Customers qui contient tout les customers.
    le probléme l'utilisation de l'objet Customers si je fait data.nb_pages çà marche est ce que mon syntaxe est vrais ou non et merci d'avance.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    juste pour test
    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
    $(function(){
      var oJson = {
        'nom': 'DURAND',
        'prenom': 'Pierre',
        'date': '01.01.2000'
      };
     
      var sTmp = '';
      $.each( oJson, function( ind, valeur){
        sTmp += '<i>' +ind +'<\/i> : ' +valeur +'<br>';
      });
     
      sTmp +='<br><hr>';
      for( var ind in oJson){
        sTmp += oJson[ind] +'<br>';
      }
      $('#result').html(sTmp);
    });

  3. #3
    Membre éclairé Avatar de fahdijbeli
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juin 2012
    Messages : 281
    Par défaut
    j'ai changé un peu mon code:
    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
     
     $CustomersJson=array();
              $i=0;
              foreach($Customers as $customer)
                { 
                $CustomersJson[$i]["name"]=$customer->getName();
                $CustomersJson[$i]["adress"]=$customer->getAdress();
                $CustomersJson[$i]["dateCreation"]=$customer->getDateCreation();
                $i++;
                }
         if($request->isXmlHttpRequest()){
              $response = new Response(json_encode(array('nb_pages' =>$nb_pages,'page'=>$page,'Customers'=> $CustomersJson)));
     
            // Ici, nous définissons le « Content-type » pour dire que l'on renvoie du JSON et non du HTML.
               $response->headers->set('Content-Type', 'application/json');
     
               return $response;
    voici la récupération :
    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
     
    $.fn.getDataJsonForPage = function(iPage){
                 $.ajax({
                      url: '../Voir/'+iPage,
                      type: "GET",
                      dataType: "json",
                      cache: false,
                      success: function(data) {
                      $.each(data.Customers,function(index, value) {
                       alert(index+":"+value);
                       $("#raed").html(value);
                                              })
     
                                          },
                      error:function(){
                      alert('erreur');}                         
                        });
            };
    ici j'ai pas une idéé comment je récupere mes données et merci .

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    mets nous le jSon retourné que nous puissions mieux t'aiguiller, les deux méthodes indiquées te montrant des méthodes d'extraction.

    PS :sorry je ne parle pas le PHP

Discussions similaires

  1. [POO] Objet json , comment instancier un nouvel objet ?
    Par le_chomeur dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 29/10/2008, 10h19
  2. Réponses: 4
    Dernier message: 26/09/2008, 12h14
  3. retourner objet Json via ajax ? hmm
    Par Myfred dans le forum Général JavaScript
    Réponses: 18
    Dernier message: 25/06/2008, 11h06
  4. [POO] Restaurer un objet JSon en javascript
    Par GandalfZeGrey dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 21/01/2008, 15h14
  5. [POO] lecture objet json
    Par taouja dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/12/2007, 11h32

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