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 :

Bloqué pour sortir mes données


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut Bloqué pour sortir mes données
    Bonjour,

    Je travaille actuellement sur un projet et j'ai un souci pour sortir mes données.

    Je fais la requête suivantes :

    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
    <?
    $SouscatSQL = mysql_query("SELECT DISTINCT souscat_cat_ID,souscat_ID FROM googlemapcat INNER JOIN googlemapsouscat ON googlemapcat.cat_ID = googlemapsouscat.souscat_cat_ID where googlemapcat.cat_theme_ID=4");
    while($Souscat = mysql_fetch_object($SouscatSQL)){	
    ?>
    if (document.getElementById("BB<? echo $Souscat->souscat_cat_ID ?>").checked==false) { { marqueur<? echo $Souscat->souscat_ID ?>.setVisible(false);}
    else {marqueur<? echo $Souscat->souscat_ID ?>.setVisible(true);}
    <? } ?>
     
     
    et le résultat est le suivant :
     
    if (document.getElementById("BB9").checked==false) { marqueur4.setVisible(false);}
    else {marqueur4.setVisible(true);}
     
    if (document.getElementById("BB9").checked==false) { marqueur3.setVisible(false);}
    else {marqueur3.setVisible(true);}
     
    if (document.getElementById("BB14").checked==false) { marqueur18.setVisible(false);}
    else {marqueur18.setVisible(true);}
     
    if (document.getElementById("BB14").checked==false) { marqueur19.setVisible(false);}
    else {marqueur19.setVisible(true);}
     
     
    et moi j'aurai voulu afficher le résultat comme ça :
     
    if (document.getElementById("BB9").checked==false) { marqueur4.setVisible(false);marqueur3.setVisible(false);}
    else {marqueur4.setVisible(true);marqueur3.setVisible(false);}
     
     
    if (document.getElementById("BB14").checked==false) { marqueur18.setVisible(false);marqueur19.setVisible(false);}
    else {marqueur18.setVisible(true);marqueur19.setVisible(true);}
    J'ai beau triturer le problème dans tous les sens, je n'y arrive pas

  2. #2
    Expert confirmé

    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
    Par défaut
    utilise du json ca sera plus propre


    ps : c'est <?php pas <?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    mais c'est possible ou pas ce que je veux faire? Je pensais recuperer les valeurs dans un tableau mais là je galère aussi.

  4. #4
    Membre chevronné Avatar de humitake
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2010
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2010
    Messages : 399
    Par défaut
    Bonjour,

    Oui c'est tout à fait possible, tu peux même le faire en php. Pour cela il ne faut pas que tu écrive complètement ton if else pour chaque ligne récupéré dans la base de données.

    Il faut que donc que pour chaque test tu utilise deux résultats.

    Pour cela je pense que le plus simple c'est d'utiliser une variable pour stocker le premier résultat et une autre pour vérifié qu'on a déjà récupérer les données d'une ligne. Si c'est le cas alors on écrit le test et on repasse la variable de vérification à false.

    Code php : 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
    <?php
    $bool = false;
    $Souscat2;
    $SouscatSQL = mysql_query("SELECT DISTINCT souscat_cat_ID,souscat_ID FROM googlemapcat INNER JOIN googlemapsouscat ON googlemapcat.cat_ID = googlemapsouscat.souscat_cat_ID where googlemapcat.cat_theme_ID=4");
    while($Souscat = mysql_fetch_object($SouscatSQL)){
        if($bool){
    ?>
            if (document.getElementById("BB<?php echo $Souscat2->souscat_cat_ID ?>").checked==false) { {marqueur<?php echo $Souscat2->souscat_ID ?>.setVisible(false); marqueur<?php echo $Souscat->souscat_ID ?>.setVisible(false);}
            else {marqueur<?php echo $Souscat2->souscat_ID ?>.setVisible(true); marqueur<?php echo $Souscat->souscat_ID ?>.setVisible(true);}
    <?php
            $bool = false;
        }
        else{
            $Souscat2 = $Souscat;
            $bool = true;
        }
    } ?>

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    Là je t'avouerai que je suis un peu perdu, mais je suis une bique en php.

    Y a du mieux avec ton script, mais c'est pas encore tout à fait ça. Merci , je regarde de plus prés.

  6. #6
    Expert confirmé

    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
    Par défaut
    fait un array en JS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
    while($Souscat = mysql_fetch_object($SouscatSQL)){
        $Souscats[] = $Souscat;
    }
     
    ?>
     
    var Souscats = <?php echo json_encode($Souscats) ?>;

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    comment on traite un tableau en json ?

  8. #8
    Expert confirmé

    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
    Par défaut
    Citation Envoyé par cheucher Voir le message
    comment on traite un tableau en json ?
    json = javascript

    donc c'est un tableau en javascript maintenant, suffit de regarder dans ton console.log

Discussions similaires

  1. Problème pour récupérer mes données XP sous Vista
    Par tortuegeniale65 dans le forum Windows Vista
    Réponses: 3
    Dernier message: 02/05/2007, 19h40
  2. Besoin d'une idée pour formater mes données
    Par guidav dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 04/04/2007, 19h49
  3. [MySQL] Comment faire pour que mes données soient sensibles à la casse
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 04/04/2007, 11h29
  4. Quel systeme pour stocker mes données
    Par /* jerome */ dans le forum Bases de données
    Réponses: 13
    Dernier message: 09/08/2006, 12h07
  5. Meilleur méthode pour stocker mes données
    Par cyberlewis dans le forum Windows
    Réponses: 6
    Dernier message: 03/07/2004, 11h53

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