Hallo Zusammen,
nach längerer Zeit muss ich hier auch mal wieder eine Frage loswerden. Ich weiß nicht, ob der Fehler schon immer da war, aber seit einiger Zeit ist mir aufgefallen, dass mir die Blättermarken falsch angezeigt werden. Außerdem wird mir angezeigt, dass nur 15 Datensätze in der DB wären. Es müssten aber 16 sein. Es wird mir z.B. folgendes angezeigt:
|< < > >| Einträge 11 bis 13 von 15 1 4 7 10 13 16
Merkwürdig ist zudem, dass zwar gesagt wird "Einträge x von 15", mir aber der Link zu "16" angeboten wird.
Der Code sieht so aus:
if ($cmd eq "search")
{
$v=0 unless $v; # weil ^ bei get nicht wirkt, muß man hier einen Trick anwenden - range von beim ersten Aufruf=0
my $range=$_range_length;
my $blaettern=$_range_length;
my $blaetter_lang=$range*10;
my $color='#FFCC00';
my $color_vonbis='#FFFFFF';
my $color_zahl='#FFCC00';
my $color_vorzu='#FFCC00';
my $color_balken='#FFCC00';
my $table='400';
my $table_align='center';
my $link="$_link&FamStand=$FamStand&Gesch=$Gesch&Altab=$Altab&Altbis=$Altbis &Kind=$Kind&Grossab=$Grossab&Grossbis=$Grossbis&PLZab=$PLZab &PLZbis=$PLZbis&Land=$Land&Partner=$Partner&Reise=$Reise &Freunde=$Freunde&SHG=$SHG&sort=$sort&cmd=search";
get "konaktiviert==!1 Nname==!$Nname FamStand~=$FamStand Geschlecht~=$Gesch Alter>=$Altab Alter<=$Altbis Kinder==$Kind Groesse>=$Grossab Groesse<=$Grossbis PLZ~>=$PLZab PLZ~<=$PLZbis Land==$Land Partner==$Partner Reise==$Reise Freunde==$Freunde SHG==$SHG range=$v,3 sort=$sort","boerse";
out "<div align=$table_align>";
out "<table width=$table cellpadding=2 cellspacing=2><tr align=left><td bgcolor=$color align='center'>";
my $newrange=$_range+$_range_length;
my $oldrange=$_range-$_range_length;
$oldrange=0 if $oldrange<0 && $oldrange>-$_range_length;
out $oldrange>=0?"<a class='text' href=\"$link&v=0&namerein=$namerein&sid=$sid\">|<</a>":"<span class='text'>|<</span>";
out "</td><td bgcolor=$color align='center'>";
out $oldrange>=0?"<a class='text' href=\"$link&v=$oldrange&namerein=$namerein&sid=$sid\"><</a>":"<span class='text'><</span>";
out "</td><td bgcolor=$color align='center'>";
$ende=substr($_amount_query,0,length($_amount_query)-1);
out $newrange<$_amount_query?"<a class='text' href=\"$link&v=$newrange&namerein=$namerein&sid=$sid\">></a>":"<span class='text'>></span>";
out "</td><td bgcolor=$color align='center'>";
out $newrange<$_amount_query?"<a class='text' href=\"$link&v=".($ende."0")."&namerein=$namerein&sid=$sid\">>| </a>":"<span class='text'>>|</span>";
out "</td><td bgcolor=$color_vonbis width='200' align='center'><span class='text'>Einträge ".($v+1)." bis ".(($v+3)>$_amount_query?"$_amount_query":($v+3))." von $_amount_query</span></td>";
if ($_amount)
{
$vr=int($v/18) unless $v==0;
$vr=$vr*18;
out "<td bgcolor=$color_vorzu align='center'><a class='text' href=$link&namerein=$namerein&sid=$sid&v=".($vr-18)."><<</a></td>" if ($vr-18)>=0;
for ($i=$vr;$i<($vr+$blaetter_lang<=$_amount_query?($vr+18):$_amount_query); $i+=3)
{
out "<td bgcolor=$color_zahl align='center'>".($v==$i?"<b><span class='text'>".($i+1)."</span></b>":"<a class='text' href=$link&namerein=$namerein&sid=$sid&v=$i>".($i+1)."</a>")."</td>";
}
out "<td bgcolor=$color_vorzu align='center'><a class='text' href=$link&namerein=$namerein&sid=$sid&v=$i>>></a></td>" if $i<$_amount_query;
}
out "</tr></table></div>";
Hat jemand eine Idee? ... vielleicht Sander? ;-)
Grüße
Oliver ;-)