We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 22151
    • 30 Posts
    Voilà je ne suis pas un pro du php mais là j’ai besoin de créer un snippet et je rame un peu.

    En clair, eform m’envoie une liste de sélections par Chekbox.
    C’est un array que je voudrais formater pour ajouter un chemin pour chaque donnée.
    Donc dans les chunks Reports et Thanks, je fais appel à un snippet de ma création.
    Soucis : soit mon snippet n’est pas interprété, soit il me retourne une erreur:

    Parse error: syntax error, unexpected '.' in /homez.53/public_html/manager/includes/document.parser.class.inc.php(769) : eval()'d code on line 3


    Voilà l’appel :
    [[retriveImages? &query=`[+photo+]`]]


    Voilà le snippet
    <?php
    foreach($query AS $nom=>$value) {
             $result= "cheminHD/".$nom.;
             }
        return $result;
    ?>


    Voilà, je ne suis pas sur ni de ma méthode ni de mon code ...
      • 5811
      • 1,717 Posts
      <?php
      foreach($query AS $nom=>$value) {
      $result= "cheminHD/".$nom.;
      }
      return $result;
      ?>

      $result= "cheminHD/".$nom.; le point après $nom est en trop wink
        • 22151
        • 30 Posts
        Merci ! grin
        J’avance, maintenant j’ai :
        « MODx Parse Error »
        MODx encountered the following error while attempting to parse the requested resource:
        « PHP Parse Error »
         
        PHP error debug
          Error: 	Invalid argument supplied for foreach()	 
          Error type/ Nr.: 	Warning - 2	 
          File: 	/homez.53/public_html/manager/includes/document.parser.class.inc.php(769) : eval()'d code	 
          Line: 	2


        J’ai donc le foreach du snippet qui n’accepte pas mon [+photo+] qui est pourtant un array, quand je l’affiche ça donne :
        DCN6578.jpg, DCN3496.jpg, DCN3453.jpg

          • 5811
          • 1,717 Posts
          si [+photo+] te renvoit DCN6578.jpg, DCN3496.jpg, DCN3453.jpg
          alors il te faut convertir la liste en array avec explode:
          <?php
          $query_array = explode(',',$query);
          foreach($query_array AS $nom=>$value) {
                   $result= "cheminHD/".$nom;
                   }
              return $result;
          ?>
            • 22151
            • 30 Posts
            Merci Coiroico, le explode c’est clair que je ne l’aurais pas trouvé tout seul !
            Tu mérites d’avoir Cocorico comme pseudo !!! grin

            Ca marche, j’arrive à re-formater mes données !

            Voilà le snippet fonctionnel :

            $query_array = explode(',',$query);
            foreach($query_array as $value) {
                     $result .="cheminHD/".$value."<br />\n";
                     }
                return $result;
            ?>
              • 22151
              • 30 Posts
              Décidément que je fais du code rien n’est simple.

              Alors que mon appel au snippet s’exécute admirablement dans le chunk "Thanks" d’eForm, il ne veut pas s’interpréter dans le report. Autrement dit, il n’est pas interprété dans le mail envoyé.

              C’est pourtant le même appel au même snippet.
              Quelqu’un connait ce bug?