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 :

fichier json et php [site d'annonces]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    noobies
    Inscrit en
    Décembre 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : noobies

    Informations forums :
    Inscription : Décembre 2014
    Messages : 103
    Par défaut fichier json et php [site d'annonces]
    bonjour, j'ai une carte map avec les département, quand je passe ma souris j'ai le nom des départements, en dessous je souhaite afficher le nombre d'annonces
    diffusées pour le département séléctionné :

    pour l'instant ca donne ca :

    Nom : 2015-01-30_134631.png
Affichages : 95
Taille : 56,4 Ko

    mais le nombre n'est pas bon car j'ai créer un fichier json manuellement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    {"1": 9,"2": 10,"3": 6,"4": 4,"5": 2,"6": 17,"7": 3,"8": 5,"9": 2,"10": 2,"11": 6,"t12": 8,"13": 23,"14": 11,"15": 2,"16": 6,"17": 10,"18": 3,"19": 4,"21": 8,
    "22": 10,"23": 3,"24": 6,"25": 6,"26": 7,"27": 11,"28": 8,"29": 5,"30": 13,"31": 20,"32": 2,"33": 17,"34": 17,"35": 14,"36": 5,"37": 14,"38": 17,"39": 4,"40": 6,
    "41": 8,"42": 7,"43": 5,"44": 15,"45": 11,"46": 4,"47": 7,"48": 1,"49": 12,"50": 12,"51": 6,"52": 7,"53": 3,"54": 3,"55": 6,"56": 16,"57": 12,"58": 4,"59": 37,
    "60": 18,"61": 8,"62": 18,"63": 7,"64": 13,"65": 5,"66": 8,"67": 18,"68": 9,"69": 26,"70": 5,"71": 10,"72": 12,"73": 10,"74": 11,"75": 4,"76": 19,"77": 27,"78": 18,
    "79": 8,"80": 14,"t81": 5,"82": 5,"83": 21,"84": 11,"85": 14,"86": 14,"87": 10,"88": 3,"89": 9,"90": 2,"91": 22,"92": 13,"93": 28,"94": 20,"95": 25}
    mon code 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
      if(params.showTooltip)
                                    {
                                            map.label.text(mapData.pathes\[code\].name+" "+code);
                                            jQuery(params.container).trigger(labelShowEvent, [map.label, code]);
                                            $.getJSON("js/annonces.json", function(obj) {
                                                    var letext = code;
                                                    var rep = obj[letext];
                                                    if (rep == 0){nbannonces="aucune annonce"}
                                                    else if (rep == 1){nbannonces="1 annonce"}
                                                    else {nbannonces=rep+" annonces"}
                                                    map.label2.text(nbannonces);
                                            });
     
     
                                            if (!labelShowEvent.isDefaultPrevented())
                                            {
                                                    map.label.show();
                                                    map.labelWidth = map.label.width();
                                                    map.labelHeight = map.label.height();
                                                    map.label2.show();
                                            }
                                    }
    je ne sait pas comment mettre le nbr d'annonces exact par département, je ne demande pas a ce que l'on me fasse le code mais juste des
    explications sur le fonctionnement et la mise en place

    merci pour votre patiente

  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
    Par défaut
    Je suppose que l'information est dans ta bdd. Tu as donc simplement à faire une requête, mettre les résultats dans un tableau PHP et l'encoder en JSON
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Homme Profil pro
    noobies
    Inscrit en
    Décembre 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : noobies

    Informations forums :
    Inscription : Décembre 2014
    Messages : 103
    Par défaut
    oui bien sur, quand je suis sur la page du département j'affiche le nombre d'annonces avec cette requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $sql = "SELECT COUNT(*) AS nbr FROM phpas_ads where cityid = '$_GET[cityid]'";  
    $rws = mysql_query($sql) or die($sql.mysql_error());
    $rrws = mysql_fetch_array($rws);
    mais je n'est jamais construit de ficher json ni jamais utilisé cette fonction, peut tu prendre quelques minute pour me donner un exemple stp.

    merci

  4. #4
    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
    Par défaut
    json_encode() est là pour ça :
    http://php.net/manual/fr/function.json-encode.php

    Au passage, on ne met jamais directement un valeur venant du navigateur dans une requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT COUNT(*) AS nbr FROM phpas_ads where cityid = '" . mysql_real_escape_string($_GET['cityid']) . "'";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Homme Profil pro
    noobies
    Inscrit en
    Décembre 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : noobies

    Informations forums :
    Inscription : Décembre 2014
    Messages : 103
    Par défaut
    pour la requete j'ai donc fais comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $sql = "SELECT cityid,COUNT(*) AS nbr FROM phpas_ads  GROUP BY cityid";  
    	$rws = mysql_query($sql) or die($sql.mysql_error());
    	$rrws = mysql_fetch_array($rws);
    	while($rrws = mysql_fetch_array($rws))	
     
        { 
    	  echo $rrws['cityid'];
    	  echo '--';
    	  echo $rrws['nbr'];
    	  echo '<br/>';
    	  }
    j'ai bien le nombres d'annonces par département, par contre comment créer le tableau pour l'encoder en json ?

    désolé mais suis pas une tête

    alors je tate mais je doit pas faire comme il faut, j'ai fait comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $sql = "SELECT cityid,COUNT(*) AS nbr FROM phpas_ads  GROUP BY cityid";  
    	$rws = mysql_query($sql) or die($sql.mysql_error());
    	while($rrws = mysql_fetch_array($rws))	
     
        { 
    	  $arr = array($rrws['cityid'] => $rrws['nbr']);
    	  }
     
     
     
    echo json_encode($arr);
    j'ai : {"95":"4"} comme resultat

    mais pas tout les departements

    bon donc j'ai crée une page annonces.php

    avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $sql = "SELECT cityid,COUNT(*) AS nbr FROM phpas_ads  GROUP BY cityid";  
    	$rws = mysql_query($sql) or die($sql.mysql_error());
    	while($rrws = mysql_fetch_array($rws))	
     
        { 
    	  $arr = array($rrws['cityid'] => $rrws['nbr']);
    	  echo json_encode($arr);
    	  }
    j'ai cette affichage :
    {"1":"2"}{"2":"3"}{"3":"4"}{"4":"3"}{"6":"2"}{"7":"3"}{"8":"3"}{"9":"1"}{"11":"2"}{"13":"39"}{"14":"3"}{"15":"1"}{"16":"1"}{"17":"1"}{"18":"1"}{"19":"1"}{"21":"4"}{"23":"2"}{"24":"2"}{"25":"2"}{"26":"3"}{"27":"2"}{"28":"1"}{"29":"2"}{"30":"1"}{"31":"2"}{"32":"1"}{"33":"1"}{"34":"7"}{"35":"5"}{"36":"2"}{"37":"1"}{"39":"2"}{"40":"3"}{"42":"1"}{"43":"1"}{"44":"11"}{"45":"3"}{"47":"3"}{"48":"1"}{"49":"2"}{"50":"3"}{"51":"5"}{"52":"1"}{"53":"1"}{"54":"2"}{"55":"2"}{"56":"2"}{"57":"3"}{"58":"1"}{"59":"10"}{"60":"2"}{"61":"2"}{"63":"5"}{"65":"1"}{"66":"1"}{"67":"4"}{"68":"3"}{"69":"11"}{"71":"2"}{"73":"2"}{"74":"1"}{"75":"6"}{"76":"10"}{"78":"2"}{"79":"4"}{"80":"3"}{"82":"1"}{"83":"4"}{"84":"13"}{"85":"1"}{"86":"1"}{"87":"2"}{"88":"1"}{"92":"3"}{"93":"4"}{"94":"5"}{"95":"4"}

    comment l'afficher dans le fichier annonces.json

    merci

  6. #6
    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
    Par défaut
    Il faudra revoir les tableaux en PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while($rrws = mysql_fetch_array($rws))	 { 
    	  $arr[$rrws['cityid']] = $rrws['nbr'];
    }
    echo json_encode($arr);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/03/2014, 15h23
  2. Création de fichier json avec PHP
    Par versus68 dans le forum Langage
    Réponses: 1
    Dernier message: 02/06/2008, 11h56
  3. Réponses: 6
    Dernier message: 29/01/2008, 17h45
  4. [Excel] Comment lire des fichiers excel avec php?
    Par dear_rihab dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 02/11/2007, 12h38

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