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

JavaScript Discussion :

[AJAX] Ajax et Json - création d'un .json par PHP


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Par défaut [AJAX] Ajax et Json - création d'un .json par PHP
    Hello,


    Le problème a plus l'air de se situer aux deuxième reply. Je le laisse pour ceux qui veulent savoir pourquoi je veux m'en servir.
    Après quelques heures d'arrachage de cheveux, je viens le partager ici.

    Je suis en train de réaliser une page en ajax, dans lequel il sera possible de faire un devis. Suivant les choix, les prix,délais, l'affichage du produit seront actualisés.

    Mon souci est le suivant : lors d'un évènement (un onblur ou onchange), plusieurs parties de ma page doivent s'actualiser.

    Au début je faisais ça de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id="support" class="mesinputs" onblur="javascript:choixsupport(); calculprix(); affichSupport();"/>
    La première fonction enregistre le choix dans un objet PHP. La deuxième recalcule le prix et l'affiche. La dernière actualise le support. Ce qu'il n'allait pas c'est que le support s'affichait, alors que le choix n'était pas toujours modifié.

    Je me suis donc documenté un peu plus sur l'Ajax et j'ai trouvé sur developpez.com, un framework pour l'ajax. J'aimerais donc m'en servir, étant donné qu'on peut gérer mieux l'Ajax, dans mon cas surtout graçe à onSucces.

    J'essaye donc de gérer ça de la sorte.

    index.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id="support" class="mesinputs" onblur="javascript:choixsupport(idElement);"/>
    choix.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
    23
    24
     
    function choixSupport(idElement){
    //affichSupport();verifEmplacement(1,'.$this->id.');
     
          var idRecepteur = "btntransfert";
         //var idRecepteur = "visumarquage";
          var fichierPHP = "ajax/choixsupport.php"
     
          new Ajax.Updater(
     
                 idRecepteur,
    	fichierPHP,
    	{
    	       method: 'post',
    	       parameters : {support : $F("support"+idElement), idelement : idElement},
    	       onSuccess : function (json){
     
    	        alert(json.fonctions.choix);
    	        }
    	}
            );
     
     
    }
    choixsupport.php
    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
     
    <?php
     
    require "./php/class/devis.php";
     
    session_start();
     
    if(isset($_POST["support"]))            $support = $_POST["support"];
    if(isset($_POST["idelement"]))  $idelement = $_POST["idelement"];
     
    $_SESSION['mondevis']->tabElement[$idelement]->support = $support;
    $varDyn = $_SESSION['mondevis']->tabElement[$idelement]->couleur ;
     
    $jsonFormat = array(
                    'fonctions' => array(
                            'choix' => 'verifEmplacement('.$varDyn.')',
                            'choix' => 'affichSupport('.$idelement.')',
                            )
                            
                    );
    echo json_encode($jsonFormat);
    header("X-JSON : ".json_encode($jsonFormat));
     
     
    ?>
    Apparement le fichier JSON se crée bien, mais je n'arrive pas à l'exploiter du coté javascript.

    Est-ce que quelqu'un voit une erreur ? Ma méthode est elle bonne ou un peu tordu ?

    Merci pour vos réponse.

  2. #2
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Par défaut
    J'ai ré-essayé ce matin. Je n'arrive toujours pas à faire marcher tout ça.

    Je me demande si le JSON n'est pas mal foutu.

    J'ai essayé de plusieurs manière, aucune ne fonctionne :s.

    PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $jsonFormat = array(
    	"fonctions"=>array(
    		1=>"calculPrix()",
    		2=>"calculPrix1()",
    		3=>"calculPrix2()",
    		)
    	);
     
    $jsonFormat = json_encode($jsonFormat);
    echo $jsonFormat;
     
    // Renvoi : {"fonctions":{"1":"calculPrix()","2":"calculPrix1()","3":"calculPrix2()"}}
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    $jsonFormat = array();
    $jsonFormat['fonctions'][] = 'calculPrix()';
    $jsonFormat['fonctions'][] = 'calculPrix1()';
    $jsonFormat['fonctions'][] = 'calculPrix2()';
     
    // Renvoi : {"fonctions":["calculPrix()","calculPrix1()","calculPrix2()"]}
    Quelqu'un saurait comment construire un tableau assiossatif JSON avec PHP s'il vous plait ?

Discussions similaires

  1. [2.x] Ajax : Retourner un render de template en json
    Par noname2 dans le forum Symfony
    Réponses: 4
    Dernier message: 13/10/2014, 09h43
  2. Création d'un json trop long
    Par Invité dans le forum C#
    Réponses: 2
    Dernier message: 25/08/2014, 10h43
  3. Erreur a la création d'un Json
    Par maxusn dans le forum Langage
    Réponses: 2
    Dernier message: 27/11/2012, 16h42
  4. [AJAX] json recuperer des donneés envoyé par php
    Par karimphp dans le forum AJAX
    Réponses: 1
    Dernier message: 14/05/2010, 11h13
  5. Création de fichier json avec PHP
    Par versus68 dans le forum Langage
    Réponses: 1
    Dernier message: 02/06/2008, 11h56

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