Beitrag von sascha (539 Beiträge) am Dienstag, 25.November.2003, 10:21.
automatischer spaltenwechsel bei bildergalerie
guten morgen,
folgendes problem:
habe eine bildergalerie, bei der nach jedem 4. thumbnail
eine neue zeile begonnen werden soll.
habe nach der auflistung ein
<perl>out "</tr>" if $ic%4;</perl>
und in der abfrage darüber folgendes:
"</tr>" unless ++$ic%4;
das müßte doch eigentlich vor und nach dem pfad zum bild stehen?
ODER?
help :-)
sascha
<!-- ab hier thumbansicht -->
<perl>
get "Rubrik==$Rubrik", "galerie","galerie";
"</tr>" unless ++$ic%4;
while(get_next(galerie))
{
$rubrik_html = convert_html($Rubrik);
out <<EOF;
<td>
<a href='http://www.domain.de/baseportal?htx=/domain.de/bildergalerie/detailansicht&Rubrik==$rubrik_html&Id==$_id'>
<img style='border:solid 1px #808080'; src=http://www.domain.de/files/$Bild width=96 height=72></a>
</td>
EOF
"<tr>" unless $ic%4;
} # while get next zu ende
</perl>
<perl>out "</tr>" if $ic%4;</perl>
<!-- bis hier datenbankausgabe -->
Antworten
Beitrag von horstees (229 Beiträge) am Dienstag, 25.November.2003, 13:43.
Re: automatischer spaltenwechsel bei bildergalerie
Hallo Sascha,
hatte dich schon vermisst...;-)
Ich selbst benutze 'unless' nie, ist was für die 'perl'isten...
und ich weiss auch nie genau, was passiert, wenn man das ++ voranstellt usw.
Zu Deinem Code:
Du kannst alles in einem <perl > </perl> Bereich unterbringen.
Dem "<tr>" musst du ein out voranstellen,
weil du nicht im out <<EOF ----- EOF Bereich bist.
Ich schlage folgendes vor:
<!-- ab hier thumbansicht -->
<perl>
get "Rubrik==$Rubrik", "galerie","galerie";
out "<tr>"; # in allen Fällen brauchst du einen Zeilenanfang, deshalb vor der Schleife
while(get_next(galerie))
{
$counter++; # Zählt um eins hoch und entspricht der 'Nummer' deines thumbs
# Ist der counter ohne Rest durch vier teilbar?
# also ist der Rest null ? also 'true'?
# Nimm hier andere Zahlen, wenn du kürzere oder längere Zeilen brauchst
if($counter%4)
{
$trenner = "</tr><tr>"; # definiert string für den Zeilenwechsel wenn rest null
}
else
{
$trenner = ""; # string bleibt leer- kein zeilenwechsel
}
$rubrik_html = convert_html($Rubrik);
<td>
<a href='http://www.domain.de/baseportal?htx=/domain.de/bildergalerie/detailansicht&Rubrik==$rubrik_html&Id==$_id'>
<img style='border:solid 1px #808080'; src=http://www.domain.de/files/$Bild width=96 height=72></a>
</td>
$trenner # mal gefüllt, mal nicht
EOF
} # while get next zu ende
out "</tr>"; # in allen Fällen brauchst du ein Zeilenende, deshalb nach der Schleife
</perl>
<!-- bis hier datenbankausgabe -->
Müsste eigentlich so klappen...
Wenn allerdings deine Abfrage keine Datensätze liefert, so legt der obige Code eine Zeile mit <tr> nix dazwischen </tr> an, müsstest du dann wenn gewünscht noch abfangen. Dabei könnte die 'baseportal' - Variable $_amount_query (Anzahl der Datensätze pro Abfrage ) helfen.
Viel Erfolg
horstees
Antworten
Beitrag von sascha (539 Beiträge) am Dienstag, 25.November.2003, 15:44.
Re: automatischer spaltenwechsel bei bildergalerie
:-))
danke, werde ich mal ausprobieren.
sascha
Antworten
Beitrag von sascha (539 Beiträge) am Dienstag, 25.November.2003, 19:49.
Re: automatischer spaltenwechsel bei bildergalerie
Antworten
Beitrag von horstees (229 Beiträge) am Dienstag, 25.November.2003, 21:14.
Re: automatischer spaltenwechsel bei bildergalerie
Antworten
Beitrag von sascha (539 Beiträge) am Dienstag, 25.November.2003, 22:40.
Re: automatischer spaltenwechsel bei bildergalerie
auf das erfolgserlebnis habe ich gewartet :-)
danke, tschüß und gute nacht !
sascha
Antworten