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 :

Utilisation de getjson


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 34
    Par défaut Utilisation de getjson
    Bonjour à tous,

    j'aurais besoin d'un coup de main. J'ai quelques difficultés à utiliser la fonction
    " $.getJSON " de jquery. Tout ce que j'essaye de faire, c'est récupérer une liste depuis un fichier php avec une fonction javascript. Dans cette fonction j'utilise un getJSON, mais je n'arrive pas à récupérer les données.
    Voici le code contenant la fonction javascript.

    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
    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
    <!DOCTYPE html>
    <!--
    To change this license header, choose License Headers in Project Properties.
    To change this template file, choose Tools | Templates
    and open the template in the editor.
    -->
    <!--<script scr="jquery-2.0.3.js"></script>-->
    <html>
     
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Mon premier document PHP</title>
     
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    </head>
     
    <body>
        <?php
        $con=mysqli_connect("127.0.0.1:3306", "root", "", "hotel");
        // Check connection
        if (mysqli_connect_errno())
          {
          echo "Failed to connect to MySQL: " . mysqli_connect_error();
          }
        $pays = "SELECT DISTINCT country FROM hotelactif";
        $city = "SELECT DISTINCT city FROM hotelactif";
        $prix = "SELECT name FROM hotelactif WHERE highrate >= 100000 AND lowrate <= 100000";
        $test = mysqli_query($con, $pays);
     
     
        $listePays = "<select id='country' name='country '>"; 
        while ($row=mysqli_fetch_array($test)) 
            { 
            $paysSelect = $row['country'];
            $listePays .= "<option value=".$paysSelect.">".$paysSelect."</option>"; 
            } 
        $listePays .= "</select>";
     
     
     
    //    while($row = mysqli_fetch_array($test))
    //        {
    //        echo $row['country'];
    //        echo "<br>";
    //        }
        mysqli_close($con);
        ?>
     
     
     
    <form id=pays action='index.php' method='POST'> 
        <table>
            <tr>
                <td>
                    Test
                </td>
                <td>
                    <div><?php print $listePays; ?><button onclick="javascript:selectCountry()">Gaufre</button></div>
                </td>
            </tr>   
        </table> 
    </form>
     
     
     
    <b><?php echo "Bonjour Helpclic" ?>
     
    </b>
    </body>
    </html>
    Avant le </body>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function selectCountry(){
     
    //        alert($('#country').val());
            url = "http://127.0.0.1/Expedia/recuperationDonnee.php/";
            $.getJSON(url, function(data){
                alert();
            })
    }
    ainsi que la fonction php contenant la liste à récupérer

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
        $test["name"] = "test";
        $test["test"] = "test2";
        $test["age"] = "test3";
        echo (json_encode($test));
        return (json_encode($test)); 
    ?>

    J'arrive à rentrer dans la fonction javascript mais je n'arrive pas à faire fonctionner le getJSON.
    Pourriez vous me donner un coup de svp?

    Merci d'avance

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    je n'arrive pas à récupérer les données
    C'est sûr qu'avec un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function(data){
        alert();
    }
    tu risques pas de voir grand chose...

    Essaye au moins avec
    par exemple !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
       echo (json_encode($test));
        return (json_encode($test));
    ???? echo puis return ????

    return n'a pas de sens en dehors du scope de php.

    getJson est une requete xhr qui attend donc en retour du string
    en l'occurrence JQuery se charge d'interpréter directement lé reponse reçue sous forme de string en objet JSON.
    Ton serveur doit retourner une chaine au format string json, ce que se charge de faire echo (json_encode($test));.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 34
    Par défaut
    Oui, bien sur. Toutes mes excuses, j'aurais du le préciser. J'ai essayé d'afficher les données en utilisant tour à tour:

    - alert(data);
    - alert(data.name);
    - alert(data[name]);
    - alert(data[0]);

    Même si cela peut paraître des aberrations, qui ne tente rien ...
    Enfin bref, à chaque fois aucune fenêtre avec un message ne s'ouvre.
    En fait, même avec alert(), rien ne s'ouvre. Donc je suppose que le problème doit venir de mon appel à la fonction php.

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 34
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
       echo (json_encode($test));
        return (json_encode($test));
    ???? echo puis return ????

    return n'a pas de sens en dehors du scope de php.

    getJson est une requete xhr qui attend donc en retour du string
    en l'occurrence JQuery se charge d'interpréter directement lé reponse reçue sous forme de string en objet JSON.
    Ton serveur doit retourner une chaine au format string json, ce que se charge de faire echo (json_encode($test));.
    Le echo etait juste là pour vérifier ce que je retournais, à savoir:

    {"name":"test","test":"test2","age":"test3"}

    Mais qu'il soit là ou pas ne change rien.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    cela confirme donc que tu es dans l'erreur !!

    return ne sert à rien

    tu dois faire un echo
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 34
    Par défaut
    Désolé, je n'avais pas saisi le sens du message. Cependant, cela ne marche toujours pas en enlevant le return.
    Par contre, j'ai une nouvelle erreur depuis la console de google chrome.
    Voici une capture d'écran de cette erreur, j'ignore si cela peux vous être utile

    Nom : error.png
Affichages : 370
Taille : 118,0 Ko

    Serait-il possible que la version de jquery que j'utilise (jquery-1.9.1.js) présente une sorte d'incompatibilité ou qu'il me manque des composant de jquery?

    Merci d'avance

Discussions similaires

  1. Autocomplétion et utilisation de $getJson
    Par cisco1635 dans le forum jQuery
    Réponses: 0
    Dernier message: 27/05/2013, 13h13
  2. [AJAX] Utilisation de getJson
    Par Aiekick dans le forum jQuery
    Réponses: 9
    Dernier message: 17/07/2012, 21h08
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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