Categories > [German] Deutscher TBS Support >

Leere table tags bei block=tr

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: herr.rilke
Date: 2006-02-27
Time: 11:50

Leere table tags bei block=tr

hallo,

wenn id versuche mit

$TBS->MergeBlock('debug',$_GET);

debug-infos auszugeben, bleibt ein leerer table-tag (öffnend und schließend) übrig.

hier der template code:

<table  border="1" align="center" cellpadding="2" cellspacing="0">
  <tr bgcolor="#F0F0F0">
    <td>[debug.key;block=tr;magnet=table]</td>
    <td>[debug.val]</td>
  </tr>
  <tr bgcolor="#E6E6E6">
    <td>[debug.key;block=tr;magnet=table]</td>
    <td>[debug.val]</td>
  </tr>
</table>

wie kann ich verhindern, dass der table-tag stehen bleibt und ungültiges  (X)HTML ausgibt ?

güße

herr rilke
By: NeverPanic
Date: 2006-02-27
Time: 12:55

Re: Leere table tags bei block=tr

Ich denke, das Problem wird durch die zwei trs hervorgerufen. Hier müsste serial output benutzt werden, um die Table-Farbe abzuwechseln.

<table>
<tr bgcolor="#f0f0f0">
<td>[debug_1.key;block=tr;magnet=tr]</td>
<td>[debug_1.val]</td>
<tr>
<tr bgcolor="#e6e6e6">
<td>[debug_2.key;block=tr;magnet=tr]</td>
<td>[debug_2.val][debug;block=table;serial]</td>
</tr>
<tr>
<td>[debug_0;block=tr]</td>
<td></td>
</tr>
</table>
Dieser Code würde nach 2 Zeilen einen neuen Table beginnen, was auch nciht Sinn der Sache war. Also noch eine Runde:
<table>
<!-- [debug;block=begin;serial;comm] -->
<tr bgcolor="#f0f0f0">
<td>[debug_1.key;block=tr;magnet=tr]</td>
<td>[debug_1.val]</td>
<tr>
<tr bgcolor="#e6e6e6">
<td>[debug_2.key;block=tr;magnet=tr]</td>
<td>[debug_2.val]</td>
</tr>
<tr>
<td>[debug_0;block=tr]</td>
<td></td>
</tr>
<!-- [debug;block=end;comm] -->
</table>
Das ganze mit der expliziten Syntay für Blocks müsste richtig funktionieren. Der php-code bleibt der Gleiche.
// Nicht getestet!
By: NeverPanic
Date: 2006-02-27
Time: 13:18

Re: Leere table tags bei block=tr

Habe den Code Eben getestet. Hier meine funktionierende Version:
                <table>
                <!-- [get;block=begin;serial;comm] -->
                    <tr bgcolor="#f0f0f0">
                        <td>[get_1.key;block=tr;magnet=tr]</td>
                        <td>[get_1.val]</td>
                    </tr>
                    <tr bgcolor="#e6e6e6">
                        <td>[get_2.key;block=tr;magnet=tr]</td>
                        <td>[get_2.val]</td>
                    </tr>
                    <tr>
                        <td>[get_0;block=tr]</td>
                        <td></td>
                    </tr>
                    <!-- [get;block=end;comm] -->
                </table>
By: herr.rilke
Date: 2006-02-27
Time: 14:28

Re: Leere table tags bei block=tr

hallo NeverPanic,

danke fuer die antwort und die muehe

leider bekomme ich bei unveraenderter php seite *gar keine* Ersetzung ...

woran mag das liegen?

ich durchblicke deinen trick nicht (wie ich auch das meiste andere nicht so wirklich durchblicke ;), deshalb haben meine modifikationen auch nicht zu irgendeinem erfolg geführt ;(

grüße!

herr rilke

By: herr.rilke
Date: 2006-02-27
Time: 14:31

Re: Leere table tags bei block=tr

hallo neverPanic,

ich habe mal einen TR weggenommen: das macht keinen unterschied bei leerer variablen: die table-tags bleiben stehen.

grüße!

herr rilke
By: herr.rilke
Date: 2006-02-27
Time: 17:02

Loesung Leere table tags bei block=tr

die loesung steht hier (hatte ich nicht vermutet bei der Ueberschrift)

Your tips and tricks -> deleting block B when block A has no data

(http://tinybutstrong.com/forum.php?msg_id=4489)

HTH

herr.rilke
By: NeverPanic
Date: 2006-02-27
Time: 18:30

Re: Loesung Leere table tags bei block=tr

Tut mir leid, da hatte ich dich wohl falsch verstanden.
Hätte wohl ähnlich mit meinem getesteten Code funktioniert, nur vergaß ich zu erwähnen, dass der Block jetzt get hieß, da ich in meinem Test-script den Block debug schon hatte.