TinyButStrong - the PHP Template Engine
Categories > TinyButStrong general (FR) >

problème erreur is not an existing key in the array. This message can be cancelled using parameter ...

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs

By: scro
Date: 2013-10-20
Time: 19:47

problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Bonjour à tous,
j'utilise un tableau pour affiché des informations, malheureusement mon tableau peux parfois être vide et donc génère l'erreur 
is not an existing key in the array. This message can be cancelled using parameter 'noerr'.
je sais qu'il existe ;nodata or quand je le met plus rien ne s'affiche donc peux être je ne le positionne pas au bonne endroit
voici le code sans nodata
                                <div frame="ResumeInfos">

                                [ItemBatcours.total_bat;block=div;if [val]=1;then '<span style="color: #aaa;">&bull;</span> Upgrade du batiment <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">[ItemBatcours.lang_bat_nom]</a> vers le <a rel="tooltip" href="index.php?file=Build&op=newbuild">Niv. [ItemBatcours.act_bat_lvl]</a> sur <a rel="tooltip" href="index.php?file=Build&op=newbuild">[ItemBatcours.astr_nom]</a>';else '<span style="color: #aaa;">&bull;</span> Il y a <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">[ItemBatcours.total_bat] b&acirc;timents </a> en cours upgrade sur l&apos;astre <a rel="tooltip" href="index.php?file=Build&op=newbuild">[ItemBatcours.astr_nom]</a>']                               
                       
                                </div>

et avec
                                <div frame="ResumeInfos">

                                [ItemBatcours.total_bat;block=div;nodata;if [val]=1;then '<span style="color: #aaa;">&bull;</span> Upgrade du batiment <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">[ItemBatcours.lang_bat_nom]</a> vers le <a rel="tooltip" href="index.php?file=Build&op=newbuild">Niv. [ItemBatcours.act_bat_lvl]</a> sur <a rel="tooltip" href="index.php?file=Build&op=newbuild">[ItemBatcours.astr_nom]</a>';else '<span style="color: #aaa;">&bull;</span> Il y a <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">[ItemBatcours.total_bat] b&acirc;timents </a> en cours upgrade sur l&apos;astre <a rel="tooltip" href="index.php?file=Build&op=newbuild">[ItemBatcours.astr_nom]</a>']                               
                       
                                </div>
peux etre vous avez une idee
Par avance merci
By: Skrol29
Date: 2013-10-20
Time: 23:46

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Bonjour,

Le code HTML encapsulé dans une balise TBS ne régit peut être pas comme tu l'attend.
Utilise plutôt les sections conditionnelles :
<div frame="ResumeInfos">
  [ItemBatcours;block=div;when [ItemBatcours.total_bat]=1]
  <span style="color: #aaa;">&bull;</span>
  Upgrade du batiment
  <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.lang_bat_nom]
  </a>
  vers le
  <a rel="tooltip" href="index.php?file=Build&op=newbuild">
    Niv. [ItemBatcours.act_bat_lvl]
  </a>
  sur
  <a rel="tooltip" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.astr_nom]
  </a>
</div>
<div frame="ResumeInfos">
  [ItemBatcours;block=div;default]
  <div frame="ResumeInfos">
  <span style="color: #aaa;">&bull;</span>
  Il y a
  <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.total_bat] b&acirc;timents
  </a>
  en cours upgrade sur l&apos;astre
  <a rel="tooltip" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.astr_nom]
  </a>
</div>
By: scro
Date: 2013-10-21
Time: 08:56

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Ok et merci pour ta réponse maintenant dans le cas ou mon array et null pourquoi le nodata ne fonctionne pas.
Par avance merci
By: Skrol29
Date: 2013-10-21
Time: 15:08

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Qu'est ce qui ne fonctionne pas avec "dodata" ? Qu'observes-tu et qu’attends-tu à la place ?
Dans la section "nodata", comme son nom l'indique, il n'y a pas d’enregistrement donc les colonnes d’enregistrement sont absentes.
By: scro
Date: 2013-10-21
Time: 16:24

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

pour ma part avec le nodata il enleve les erreur si le tableau et vide me semble t-il
By: scro
Date: 2013-10-22
Time: 11:24

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

peux etre à tu une solution dans le cas ou mon array et vide de ne pas afficher les erreur
par avance merci
By: Skrol29
Date: 2013-10-22
Time: 12:04

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Tu ne réponds pas vraiment à mes questions. Du coup je suis perdu.

Comme je te le disais : "Dans la section "nodata", comme son nom l'indique, il n'y a pas d’enregistrement donc les colonnes d’enregistrement sont absentes.".

Donc [ItemBatcours.total_bat;block=div;nodata;...] est une aberration puisque tu lui dis en même temps que c'est le bloc nodata et qu'il faut afficher "total_bat".
Tu devrait écrire simplement [ItemBatcours;block=div;nodata]


By: scro
Date: 2013-10-22
Time: 22:09

Re: problème erreur is not an existing key in the array. This message can be cancelled using parameter 'noerr'.

Déjà merci pour ta patience et tes explication.
Pour répondre à ta question quand je met le nodata est bien rien ne s'affiche même quand il y a des données dans le tableau.
donc j'ai utiliser le code que tu me propose:

<div frame="ResumeInfos">
  [ItemBatcours;block=div;nodata;when [ItemBatcours.total_bat]=1]
  <span style="color: #aaa;">&bull;</span>
  Upgrade du batiment
  <a rel="tooltip" tooltip="Upgrade" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.lang_bat_nom]
  </a>
  vers le
  <a rel="tooltip" href="index.php?file=Build&op=newbuild">
    Niv. [ItemBatcours.act_bat_lvl]
  </a>
  sur
  <a rel="tooltip" href="index.php?file=Build&op=newbuild">
    [ItemBatcours.astr_nom]
  </a>
</div>
il me retourne toujours pas de valeur alors que quand je le supprime la les valeurs s'affiche.
En clair quand je le met il fait bien son travail cependant quand j'ai des données il ne les affiche pas