We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23050
    • 1,842 Posts
    Je crois que je me suis mal exprimée embarrassed

    Je reprends depuis le début parce qu’avec mes 1000 questions, je nous embrouille.

    Quote from: Helio
    dans les commentaires appelle une snippet (modx parse tout) [[myID]]
    J’ai créé le snippet DocEnCours (ou myID) que j’appelle dans mon fichier .js (en l’occurence le doc 14) avec [[DocEnCours]] dans cette ligne :
    // Id en cours : [[DocEnCours]]

    (le // pour les commentaires comme indiqué dans ton quote, c’est bon ?)

    Quote from: Helio

    dans le <head>
    <script type="text/javascript" src="[~5~]&docID=[*id*]"></script>//remplace & par ? si Friendly url
    Ca, c’est facile, je l’ai mis dans le template qui sert à afficher mon document 3

    Quote from: Helio
    et voilà maintenat dans ton JS tu as la valeur du doc consulté
    Quand j’affiche le code généré dans mon .js (via la webdevloper toolbar, Informations > Voir le javascript), ma ligne
    // Id en cours : [[DocEnCours]]

    devient
    // Id en cours : 

    Donc, l’id 3 a été perdu en chemin donc comme il n’y a pas d’id, lorsque j’appelle mes images avec

                	{ "id" : "img1" , "img" : "[*rea-image1*]", "largeImg" : "[*rea-image1*]" },
                	{ "id" : "img2" , "img" : "[*rea-image2*]", "largeImg" : "[*rea-image2*]" },                                                
                    { "id" : "img3" , "img" : "[*rea-image3*]", "largeImg" : "[*rea-image3*]" }


    (cf le code fourni dans mainPage_1.02.js du script de la galerie), le code généré est

                    { "id" : "img1" , "img" : "", "largeImg" : "" },
    
                	{ "id" : "img2" , "img" : "", "largeImg" : "" },                                                
    
                    { "id" : "img3" , "img" : "", "largeImg" : "" }


    Voilà, j’espère que j’ai été plus claire là ^^

    Au vu de ce test, il me semble donc que [[DocEnCours]] ne retourne rien et je ne comprends pas pourquoi. S’il avait retourné quelque chose, j’aurai du le retrouver dans la ligne commentée de mon js, n’est-ce pas ?

    (PS : et j’ai compris pourquoi je ne le vois pas dans mon template : c’est parce que le docID est spécifié dans l’appel du fichier .js et non dans l’url de la page de ma galerie)
      • 23050
      • 1,842 Posts
      Aaaaaaah, j’avance laugh

      $myID = $_REQUEST[’docID’]; //le doc en consultation sur le front ds lequel est inclus le js <script>
      return $myID;


      est en fait

      $myID = $_REQUEST['docID']; //le doc en consultation sur le front ds lequel est inclus le js <script>
      return $myID;


      docID doit être entouré par des ’ (apostrophes)

      Bien, maintenant, la ligne // Id en cours : [[DocEnCours]] dans mon doc .js renvoie bien le paramètre $docID que je passe dans l’appel du fichier .js

      Je continue... wink
        • 11975
        • 2,542 Posts
        Désolé perrine de pas plus t’aider mais je bossais sur autre chose.

        Je vois que tu t’en sors très bien toute seule

        :-)
          Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
          • 23050
          • 1,842 Posts
          C’est pas grave wink Je comprends très bien que tu aies autre chose à faire hihi

          C’est juste que là, j’étais coincée et vu mes compétences en php, je ne savais pas comment continuer lol
            • 23050
            • 1,842 Posts
            Ayé, c’est bon ! Pfiou, merci Helio wink

            Donc, pour résumer et comme indiqué par Helio,

            1- il faut définir un paramètre que l’on passe dans l’appel du fichier .js
            <script type="text/javascript" src="[~5~]&docID=[*id*]"></script>//remplace & par ? si Friendly url

            (5 étant l’id de votre doc .js et [*id*] appelant le doc que vous affichez dans le navigateur)
            [Edit : remplacer & par &amp; pour satisfaire aux conditions du W3C]

            2- le [*id*] passe dans la moulinette de [[DocEnCours]] grâce auquel on stocke l’id du doc à afficher
            <?php
            $DocEnCours = $_REQUEST['docID']; //le doc en consultation sur le front ds lequel est inclus le js <script>
            return $DocEnCours;
            ?>

            (Dans les exemples que nous avons pris au dessus, [*id*] renvoie 3 et le doc 3 affiche la galerie)

            3- Dans le doc .js, on appelle n’importe quel TV du doc en cours (3) grâce au snippet GetField
            Par exemple : [[GetField? &docid=`[[DocEnCours]]` &field=`nomdevotreTV`]]

            Encore un énorme merci à Helio !