PHP Erreur de parsing incompréhensible

  • Auteur de la discussion Auteur de la discussion ortolojf
  • Date de début Date de début
WRInaute accro
Bonjour

J'ai mis en Français dans une array tous les codes à 3 lettres des pays, avec les noms des pays et leurs continents

Je ne comprend pas l'erreur de parsing qui se produit avec le code ci-dessous :

Erreur de parsing : double-quoted string "Europe ", ) attendu.

L'array avec des clés alphabétiques est permise en PHP ?

Merci beaucoup de votre aide.




PHP:
<?php

$codes_cont = array(
    "AF" => "Afrique", 
    "AN" => "Antarctique", 
    "AS" => "Asie", 
    "NA" => "Amérique du Nord", 
    "OC" => "Océanie", 
    "SA" => "Amérique du Sud", 
    "EU" => "Europe");

?>
 
WRInaute discret
j'ai testé le code ci-dessous, aucun souci, cela affiche bien ce qui est attendu.

PHP:
$codes_cont = array(
    "AF" => "Afrique",
    "AN" => "Antarctique",
    "AS" => "Asie",
    "NA" => "Amérique du Nord",
    "OC" => "Océanie",
    "SA" => "Amérique du Sud",
    "EU" => "Europe");
print_r($codes_cont);
echo $codes_cont["SA"];
 
WRInaute accro
Merci beaucoup moiju36

Cà s'est mis à marcher.

Ma librairie de lecture country et continent fonctionne.

C'est pour un calcul de la TVA par rapport aux pays.

Avec des country et continents en Français et les codes à 2 et 3 lettres.
 
WRInaute accro
Une question encore.

Lors de la déclaration de la TVA, on indique le code du pays acheteur ( 2 ou 3 lettres ) ?

Ou bien on calcule d'après la TVA du pays acheteur ?

J'ai tous les taux de TVA de tous les pays.

Comment çà s'intègre à un logiciel de paiement web fourni par une banque ?

Merci beaucoup.
 
WRInaute occasionnel
Pour la TVA, tu devrais plutôt prendre un comptable, il pourra répondre exactement à tes questions, et tu seras sûr d'avoir la bonne information.

Hors-sujet: si tu décides de scinder le continent Américain en plusieurs zones, il faut ajouter Amérique centrale, et Caraïbes.
 
WRInaute accro
Merci beaucoup kartyr

C'est vrai qu'actuellement ce n'est pas à l'ordre du jour que je me me mette en entreprise.

Pour l'instant je n'ai plus qu'à faire quelques fonctions du type : delete_noeud(node), pour ma gestion d'arbre n-aire.

Je vais me pencher prochainement sur son utilisation pratique pour la gestion dynamique du HTML.

Merci beaucoup beaucoup pour ton aide.
 
WRInaute accro
Rebonjour

J'affecte des key pouvant être réorganisées, et des ID fixes par noeuds.

Les ID sont affectés par this.uniqid() qui donne des UUID tous différents.

Chaque noeud a son ID, et j'ai mis sur sur pieds l'architecture d'imbrication des panneaux.

Les parcours ci-dessous sont en preorder et levelorder.

D'autres sont possibles: inorder, postorder.

La deletion d'un noeud entraîne celle du sous-arbre.

La fonction reorganize(father) permet de réorganiser les key en linéarisant leurs valeurs pour toute l'array des noeuds fils.

Je vais voir l'architecture de manipulation du html.

Amicalement.



Code:
10:37:44,694  PRE ORDER HTMLManager.js:1592:9
10:37:44,694  key = 80 ID = f7295d85-fead-4fe4-c96b-ddc8515cd159 level = 0
10:37:44,694  key = 8080 ID = 535c736d-fa4f-4813-9a5a-8d3bbfb7e561 level = 1
10:37:44,694  key = 808080 ID = b441c04c-cab9-4ade-b9ab-f9d37b991095 level = 2
10:37:44,694  key = 8080c0 ID = 9275968a-c3ad-4ecb-67a7-37a420ace824 level = 2
10:37:44,694  key = 8080e0 ID = f6e632ac-375e-4b5a-70a3-fd4958d1f326 level = 2
10:37:44,694  key = 80c0 ID = 46db39c2-dba6-499d-d5dd-f0b1dedaa1f1 level = 1
10:37:44,694  key = 80e0 ID = 88d61d7d-954f-4038-c86b-cb7c9967ecb4 level = 1
10:37:44,694  key = 80f0 ID = f7c27803-43b1-4f67-1933-1cbe4d446ff2 level = 1
10:37:44,694  key = 80f8 ID = d063310f-d060-411e-dc79-04b199c546d3 level = 1
10:37:44,694  LEVEL ORDER HTMLManager.js:1596:9
10:37:44,694  key = 80 ID = f7295d85-fead-4fe4-c96b-ddc8515cd159 level = 0
10:37:44,694  key = 8080 ID = 535c736d-fa4f-4813-9a5a-8d3bbfb7e561 level = 1
10:37:44,694  key = 80c0 ID = 46db39c2-dba6-499d-d5dd-f0b1dedaa1f1 level = 1
10:37:44,694  key = 80e0 ID = 88d61d7d-954f-4038-c86b-cb7c9967ecb4 level = 1
10:37:44,695  key = 80f0 ID = f7c27803-43b1-4f67-1933-1cbe4d446ff2 level = 1
10:37:44,695  key = 80f8 ID = d063310f-d060-411e-dc79-04b199c546d3 level = 1
10:37:44,695  key = 808080 ID = b441c04c-cab9-4ade-b9ab-f9d37b991095 level = 2
10:37:44,695  key = 8080c0 ID = 9275968a-c3ad-4ecb-67a7-37a420ace824 level = 2
10:37:44,695  key = 8080e0 ID = f6e632ac-375e-4b5a-70a3-fd4958d1f326 level = 2
10:37:44,695 Accessing shared resource... HTMLManager.js:344:12
10:37:44,695  Level = 0 , Key = 80 , ID = f7295d85-fead-4fe4-c96b-ddc8515cd159
10:37:44,695  Level = 1 , Key = 802a , ID = 535c736d-fa4f-4813-9a5a-8d3bbfb7e561
10:37:44,695  Level = 1 , Key = 8054 , ID = 46db39c2-dba6-499d-d5dd-f0b1dedaa1f1
10:37:44,695  Level = 1 , Key = 807e , ID = 88d61d7d-954f-4038-c86b-cb7c9967ecb4
10:37:44,695  Level = 1 , Key = 80a8 , ID = f7c27803-43b1-4f67-1933-1cbe4d446ff2
10:37:44,695  Level = 1 , Key = 80d2 , ID = d063310f-d060-411e-dc79-04b199c546d3
10:37:44,695  Level = 2 , Key = 802a40 , ID = b441c04c-cab9-4ade-b9ab-f9d37b991095
10:37:44,695  Level = 2 , Key = 802a80 , ID = 9275968a-c3ad-4ecb-67a7-37a420ace824
10:37:44,695  Level = 2 , Key = 802ac0 , ID = f6e632ac-375e-4b5a-70a3-fd4958d1f326
10:37:44,695 Acceded shared resource...
 
WRInaute accro
Beurp.

Il semble que j'ai fait une erreur.

Pas besoin de faire des aplats/panneaux.

La page entière en html avec des {{}} suffit.

Cà a l'air beaucoup plus simple.

Mustache c'est génial.

Après c'est du balisage pur.

Où avais-je la tête... ;(
 
WRInaute accro
Bon

Je souhaite faire des templates imbriqués.

Possible avec des partials ?

Voici le code html, brut de brut.

Les dépendances des variables entre scripts mustache sont faibles.


HTML:
<!DOCTYPE html>
<html lang="fr">
/lib/mustache/head.mustache
<body itemscope itemtype="http://schema.org/WebPage">
/lib/mustache/post_head.mustache
/contact/mustache/main_panneau.mustache
/contact/mustache/footer.mustache
</body>
</html>
 
WRInaute accro
Bonjour spout

J'ai lu çà sur le web :

JavaScript:
var roomTemplateSource = $('#room-template').html();
var roomTemplate = Mustache.compile(roomTemplateSource);
Mustache.render(template, view, {
  room: roomTemplate
});

<template id="server-template">
        {{#servers}}
        <b>some html and {{> room}}</b>
        {{/servers}}
</template>


Question :

Dans l'objet partial de Mustache.render(), est-il possible de mettre plus d'une clé, ç-à-d plusieurs partials à la file ?

Merci beaucoup.
 
WRInaute accro
Trouvé

HTML:
<script type="template/text" id="partial">
    <ul>
        {{#name}}
        <li>{{.}}</li>
        {{/name}}
    </ul>
</script>

<script type="template/text" id="main">
    <div>
        <h1>Stooges</h1>
        {{#object1}}
        {{>objPartial}}
        {{/object1}}
    </div>
    <div>
        <h1>Musketeers</h1>
        {{#object2}}
        {{>objPartial}}
        {{/object2}}
    </div>
</script>

<script type="text/javascript">    
    var partial = $('#partial').html(),
        main = $('#main').html(),
        data = {

            object1: {
                name: ["Curly", "Moe", "Larry"]},
            object2: {
                name: ["Athos", "Porthos", "Aramis", "D'Artagnan"]}

        },
        html = Mustache.to_html(main,data, {
            "objPartial": partial
        });
    document.write(html);
</script>
 
WRInaute accro
Rebonjour

Question simple :

Pour un template comportant du Javascript de type mustache

Vaut-il mieux :

<template> ou <script type="template/text">

?

Merci.
 
WRInaute accro
Bonjour pomination

D'après :

JavaScript:
function renderHello() {
  fetch('template.mustache')
    .then((response) => response.text())
    .then((template) => {
      const rendered = Mustache.render(template, { name: 'Luke' });
      document.getElementById('target').innerHTML = rendered;
    });
}


C'est possible de charger plusieurs templates à la file, pour peu que chaque 'target' figure dans le html initial.

Merci beaucoup beaucoup pour ton aide.

Je vais revoir mes templates.

Amicalement.
 
WRInaute accro
Bonjour

J'aurais besoin d'avoir la réponse à cette question :

Comment répéter un code Javascript quand une promise est fulfilled ?

C'est-à dire : Le code Javascript entier doit être rechargé toutes les fois que la promise est fulfilled.

Et ceci, en Javascript et sans requête http.

Merci beaucoup.
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut