CGI-Suchergebnisse in Frameset
Harald
- cgi
0 Wolfgang Wiese0 harald0 Wolfgang Wiese0 FrankS0 FrankS
0 harald
Folgendes Problem: Ich bastler gerade eine Hompage mit einem kleinen datenbankbasierten Shop. dafür habe ich zwei verschiedene Navigationsseiten angelegt - eine für die ganze Seite (oben), und eine für den Shop (links). Nun würde ich gerne das Frameset für den Shop aufrufen, wenn ich eine cgi-abfrage starte (z.B. von der oberen Navi Leiste, oder, um die Besucher von anderen Info-Seiten, auf der Artikel beschrieben werden, zum Shop zu führen). Wie schaffe ich es, dass ich das CGI-Ergebnis in einem Frame (rechts) des zweiteiligen Shop-Framesets aufrufe?
Harald
Folgendes Problem: Ich bastler gerade eine Hompage mit einem kleinen datenbankbasierten Shop. dafür habe ich zwei verschiedene Navigationsseiten angelegt - eine für die ganze Seite (oben), und eine für den Shop (links). Nun würde ich gerne das Frameset für den Shop aufrufen, wenn ich eine cgi-abfrage starte (z.B. von der oberen Navi Leiste, oder, um die Besucher von anderen Info-Seiten, auf der Artikel beschrieben werden, zum Shop zu führen). Wie schaffe ich es, dass ich das CGI-Ergebnis in einem Frame (rechts) des zweiteiligen Shop-Framesets aufrufe?
1. Selfhtml lesen.
2. Ausprobieren.
3. Verzweifelt sein
4. Erst dann: Fragen :)
Die Antwort waere :
<form target="FENSTERNAME" action="xxxx" method="zzzz">
Ciao,
Wolfgang
Folgendes Problem: Ich bastler gerade eine Hompage mit einem kleinen datenbankbasierten Shop. dafür habe ich zwei verschiedene Navigationsseiten angelegt - eine für die ganze Seite (oben), und eine für den Shop (links). Nun würde ich gerne das Frameset für den Shop aufrufen, wenn ich eine cgi-abfrage starte (z.B. von der oberen Navi Leiste, oder, um die Besucher von anderen Info-Seiten, auf der Artikel beschrieben werden, zum Shop zu führen). Wie schaffe ich es, dass ich das CGI-Ergebnis in einem Frame (rechts) des zweiteiligen Shop-Framesets aufrufe?
- Selfhtml lesen.
- Ausprobieren.
- Verzweifelt sein
- Erst dann: Fragen :)
Die Antwort waere :
<form target="FENSTERNAME" action="xxxx" method="zzzz">
Ciao,
Wolfgang
Wenn's so einfach wäre (vielleicht habe ich die Frage falsch formuliert, es ist eben auch ein bisschen komplizierter): es geht nicht darum, die Suchergebnisse einfach in einem anderen Frame darzustellen, sondern z.B. mit dem Abschicken der Suche ein zweites Frameset aufzurufen. Erst gibt's nur zwei Frames, wenn gesucht wird, soll sich der untere Frame in zwei Frames aufteilen. Und 1-3 habe ich schon hinter mir (v.a. 3). Danke, Harald
Hi,
»»sondern z.B. mit dem Abschicken der Suche ein zweites Frameset
»»aufzurufen. Erst gibt's nur zwei Frames, wenn gesucht wird, soll
»»sich der untere Frame in zwei Frames aufteilen. Und 1-3 habe ich
»»schon hinter mir (v.a. 3). Danke, Harald
Ah! Jetzt wird das Problem schon interessanter!
Nun, mach es doch so, dass dein CGI-Skript ein Vor-CGI-Skript
bekommt, welches zuerst aufgerufen wird und welches nichts
weiter macht, als ein Frameset zu definieren und in diesem
Frameseit einem zweiten Skript die eigentlichen Suchparameter
uebergibt.
Im prinzip wuerde dieses Vorskript also nur so aussehen:
(UNGETESTET!)
#!perl
my $SUCHSKRIPT = "http://DOMAIN/cgi-bin/suche.pl";
print "Content-Type: text/html\n\n";
print
<HTML>\n
<FRAMESET border=0 frameborder=0 framespacing=0>
<frame marginheight=2 name="bla" src="$SUCHSKRIPT?$ENV{'QUERY_STRING'}" scrolling=no noresize >\n
<frame marginheight=2 name="blub" src="irgendwasstatisches.html" scrolling=auto noresize >\n
</FRAMESET>
</HTML>\n
\n";
exit;
Ciao,
Wolfgang
Hallo Harald
[...] sondern z.B. mit dem Abschicken der Suche ein zweites Frameset
aufzurufen. Erst gibt's nur zwei Frames, wenn gesucht wird, soll sich
der untere Frame in zwei Frames aufteilen.
Ist vielleicht ein bischen um die Ecke gedacht, was anderes fällt mir aber im Moment nicht ein. Könnte vielleicht 2-stufig gelöst werden. Beim Aufruf des Scripts gibst Du mit Target den Frame an, der geteilt werden soll. Dein Script gibt eine HTML-Datei aus, die ein neues Frameset enthält:
<frameset rows="20%,80%">
<frame src="xyz.htm" name="ein_Fenster">
<frame src="http:\domain.de\dein_such_script.pl?parameter1=bla¶meter2=blu" name="Ergebnis_Fenster">
</frameset>
Ein Frame enthält als Source den Aufruf des Suchscripts mit allen Parametern. Ob Du nun 2 Scripts nimmst oder in einem Script die Funktionen "Frame erzeugen" und "Suche" mittels weiterem Parameter steuerst, ist Geschmackssache.
Gruß Frank
Nochmal ich
Ist vielleicht ein bischen um die Ecke gedacht,
Scheinbar doch nicht, wenn ich mir Wolfgangs Posting ansehe ;-)
Gruß Frank
Folgendes Problem: Ich bastler gerade eine Hompage mit einem kleinen datenbankbasierten Shop. dafür habe ich zwei verschiedene Navigationsseiten angelegt - eine für die ganze Seite (oben), und eine für den Shop (links). Nun würde ich gerne das Frameset für den Shop aufrufen, wenn ich eine cgi-abfrage starte (z.B. von der oberen Navi Leiste, oder, um die Besucher von anderen Info-Seiten, auf der Artikel beschrieben werden, zum Shop zu führen). Wie schaffe ich es, dass ich das CGI-Ergebnis in einem Frame (rechts) des zweiteiligen Shop-Framesets aufrufe?
Harald
Vielen Dank euch beiden, klappt super.