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 :

Lire dans un JavaScript un objet PHP parsé json_encode($return)


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    1 026
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 026
    Billets dans le blog
    45
    Par défaut Lire dans un JavaScript un objet PHP parsé json_encode($return)
    Bonjour à tous,

    J'ai beau chercher, je ne trouve pas de solution à mon problème de lecture d'une variable envoyée par PHP encodée json.

    Voici le code dans sqlConnect.js qui appelle sqlConnect.php,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function jsConnect()
    {	$.ajax(
    	{	type: "POST",
    		url: "sqlConnect.php",
    		dataType: "text",
    		success: function(dataSQL, statut)
    		{	alert ("success " + dataSQL);
    		},
    		error: function(dataSQL, statut)
    		{	alert ("error " + dataSQL );
    		}
    	});
    }
    et mon code dans sqlConnect.php
    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
     <?php
    //PDO / php_pdo / php_pdo_mysql / Data Objects / class pdo
     
    //header('Content-Type: application/json; charset=utf-8');
     
     
    $host = "monHost";
    $dbname = "maDB";	
    $dsn = "mysql:host=". $host.";dbname=".$dbname;
    $username = 'monUser';
    $password = 'monPw';
     
    /*Soit dans le constructeur lors de l'instanciation de l'object de connexion => oCnx
    soit après l'instanciation de objet connexion oCnx avec methode setAttribute => $oCnx->setAttribute(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION);*/
     
    $options = array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_EMULATE_PREPARES => false,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
    PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
    );
     
    $selQry = "SELECT * FROM `participant` LIMIT 0 , 30"; 
    $delQry = "DELETE FROM `participant`";
    $insQry = "INSERT INTO `participant` (`idparticipant`, `password`, `firstname`, `name`) VALUES (NULL, 'pw1', 'moi', 'moi')";
    try
    {   $oCnx = new PDO($dsn, $username, $password, $options);
    	$rowCount = $oCnx->exec($insQry);
    	$oQry = $oCnx->query($selQry);
    	$rows = $oQry->fetchAll();
    } 
    catch (PDOException $e)
    {	$name =  "Erreur !: " . $e->getMessage() ;
    	die();
    }
     
    $oCnx= null;// Fermeture connexion !
    echo json_encode($rows);
    ?>

    Mais voilà je ne sais pas comment accéder aux données en retour depuis sqlConnect.php via echo json_encode($rows)

    Actuellement mon dataType = 'text' dans $.ajax({....}), mon alert(dataSQL) pour success: function(dataSQL){...} me renvoie les données sous ce format

    [{"idparticipant":3,"password":"pw1","firstname":"moi","name":"moi"},{"idparticipant":4,"password":"pw1","firstname":"moi","name":"moi"},{"idparticipant":11,"password":"pw1","firstname":"moi","name":"moi"},{"idparticipant":12,"password":"pw1","firstname":"moi","name":"moi"}]
    Et c'est déjà super

    Mais quand je passe $.ajax({...dataType = 'json'}) j'ai en retour:
    [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
    Ma question est super simple mais je me détruis les yeux à chercher la solution pour récupérer les données reçues dans sqlConnect.js depuis sqlConnect.php afin de les traiter et les intégrer plus tard dans un grid jQuery.

    D'ailleurs si quelqu'un connait un grid JQuery, je suis preneur.

    Merci à tous

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Bonjour,

    Comme l'indique les règles de la section, merci de ne pas mettre de code serveur sur ce forum. Nous on s'intéresse uniquement à ce qui sort à l'autre bout du tuyau, côté client.

    Aussi, si ta question repose sur jQuery, ce topic aurait davantage sa place dans la section jQuery

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    1 026
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 026
    Billets dans le blog
    45
    Par défaut
    Bonjour SylvainPV

    Mais justement le problème est de lire dans le fichier JS la variable reçue depuis PHP.

    Le code PHP est pour comprendre le contexte !

    Donc je réitère ma question comment lire dans le fichier sqlConnect.js je la variable de retour parsée json_encode du sqlConnect.php.

    Merci à tous!!!!!

  4. #4
    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 pense que tu dois utiliser une ancienne version de jQuery qui, si je me souviens bien, parsait uniquement le premier niveau.
    Sinon, pourquoi n'utilises-tu pas .getJSON() plutôt ?
    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

  5. #5
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    ou un dataType JSON ?
    le retour serait alors directement un JSON exploitable ...
    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 !

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    1 026
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 026
    Billets dans le blog
    45
    Par défaut
    Bonjour Bovino et SpaceFrog,

    Toute la question est là !!!!

    Si dans sqlConnect.js, je passe dataType = 'json' alors comment récupérer la valeur d'un champ d'un enregistrement dans la variable de réception dataSQL.

    Je n'arrive pas à trouver la méthode pour rechercher dans une variable encodée json, la valeur des champs!

    C'est surement super basique , mais ma question est vraiment de connaitre la méthode (code ) pour récupérer en JavaScript, la valeur des champs pour chaque enregistrement de dataSQL qui reçoit un format encodé json !!!

    Je ne sais plus si je suis encore très clair

    Encore merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/04/2014, 23h29
  2. Réponses: 1
    Dernier message: 08/12/2010, 15h45
  3. Appel fonction php dans code javascript
    Par licorne dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 05/03/2008, 10h55
  4. [PHP-JS] variable php dans du javascript ?????
    Par lipczynski dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/08/2005, 14h26
  5. [PHP-JS] Execution d'un script php dans du javascript
    Par Anduriel dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/06/2005, 20h41

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