Kostenlose Unterprogramme bei123.de
Datenbank-Design & bp-Programmierung & Webtools
Webmaster: Harald Fehde & Website: bei123.de

Weitere kostenlose Codeschnipsel und Anwendungen finden Sie:
Alles aus baseportal herausholen bei123.de

detail_weiter_zurueck

Wie erstelle ich die Links für [Weiter] bzw. [Zurück] bei einer Detail-Anzeige?
Eine Auto-Datei dient als Beispiel für die Umsetzung. Die Datei hat die Felder Marke, Farbe, Tueren ,Preis (siehe unten).

Die Anzeige der Datensatznavigation erfolgt, nachdem die Detail-Ansicht ausgewählt wurde.
Weiter unten wird auch der Code des Unterprogramms und die Parameterübergabe erläutert.


 Alles  Neu  Suchen  Auswahl  Ändern  Detail 

81 Einträge gesamt:  1  11  21  31  41  51  61  71  81 

AktionMarkeFarbeTuerenPreisTypVerbrauchErstzulassung
Ändern...grün     
Ändern...g°ün     
Ändern...grün     
Ändern...grün     
Ändern...grün     
Ändern...grün     
Ändern...grün     
Ändern...grün     
Ändern...grün     
Ändern...grün     

Programmcode/Parameter

1.)Zunächst wird abgefragt, ob eine Suchroutine gelaufen ist und es werden entsprechende Suchparameter gespeichert.

<html><head><title></title></head><body>
<perl>
if(%_sel)
{
$Such_param="@_sel";
}
else
{
$Such_param="Id==*";
}
</perl>

2.)Nachfolgend das Unterprogramm "detail_weiter_zurueck", welches die Weiter/Zurück-Links in einer while-Schleife generiert

<perl>
sub detail_weiter_zurueck
{
$_go_id=$_get{Id};
get "$Such_param sort=$_[0]", "$_[1]";
$_lfd_nr=0;

while(get_next("$_[1]"))
{
$ID_LISTE[$_lfd_nr]=$_id;
$_go_nr=$_lfd_nr if($_go_id==$_id);
$_lfd_nr++;
}

$_am_ende=$#ID_LISTE;
$_go_zurueck="<a href=$_link&cmd=all&Id=$ID_LISTE[$_go_nr-1]>Zurück</a>" if ($_go_nr>0);
$_go_weiter="<a href=$_link&cmd=all&Id=$ID_LISTE[$_go_nr+1]>Weiter</a>" if ($_go_nr<$_am_ende);

if (%_sel)
{
$_go_zurueck="<a href=$_link&$Such_param&cmd=all&Id=$ID_LISTE[$_go_nr-1]>Zurück</a>" if ($_go_nr>0);
$_go_weiter="<a href=$_link&$Such_param&cmd=all&Id=$ID_LISTE[$_go_nr+1]>Weiter</a>" if ($_go_nr<$_am_ende);
}
}
</perl>

3.)Danach wird hier als "Beispiel" die Autodatei aufgerufen !

<do action=all db=Autos range^=0,10 sort=Marke>

4.)Falls die Detail-Ansicht gewählt wurde, wird das Unterprogramm aufgerufen - es müssen die 2 Parameter Sort-Feld (hier "Marke") und Datei (hier "Autos") an das Unterprogramm übergeben werden. $_go_zurueck und $_go_weiter sind die beiden Links für Weiter bzw Zurück.

<perl>
if($cmd eq "all")
{
&detail_weiter_zurueck("Marke","Autos");
out "$_go_zurueck $_go_weiter";

5.)Mit get "Id==!$_go_id" kann ggf. ein Datensatz angesprochen werden. (siehe obiges Beispiel) Falls dies nicht benötigt wird, können die nächsten 4 Zeilen des Pogrammcodes entfernt werden.

get "Id==!$_go_id" , "Autos";
out "<hr>";
out "<b>$Marke $Farbe $Tueren $Preis </b>EURO<br>";
out "<hr>";

}
</perl>
</body></html>

powered in 0.01s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!