WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   CGI + Frameset? (http://www.wcm.at/forum/showthread.php?t=58959)

Gjinn 07.06.2002 18:11

CGI + Frameset?
 
Hab mit einem CGI Script eine Benutzerverwaltung angelegt.

Leider funktioniert das Ganze (Register, Login, Controlpanel, ect.) nur mit einfachen htm Seiten.
Sobald ich aus dem CGI Script heraus auf eine html Seite mit Frameset verweise, wird diese zwar aufgerufen, aber auf den einzelnen Frame-seiten funktionieren die Variablen und somit das Script nicht mehr :(

Warum ???

Ist das Standart, das in CGI keine Frameseiten angesprochen werden können, oder bedarf es nur einer Änderung im Script bzw. dem Frameset?

Kennt jemand vielleicht eine alternative Benutzerverwaltung?


MFG.Gjinn

sagi 08.06.2002 17:18

Du musst die Variablen von der Fameseite auf die einzelnen Seiten weitergeben!

<... src="seiten.htm?v1=w1&..."...>

also muss die Frameseite selbst ein PerlScript sein, oder du musst den QueryString über SSI übergeben.

Ich denke, dass sollte dein Problem lösen

mfg

c.

Gjinn 10.06.2002 00:02

äh...hm...ich weiß was Du meinst und es klingt auch logisch, nur ich weiß echt nicht, wie ich das umsetzen soll.
In der Config datei "pm.cfg" wird direkt auf *.htm templates verwiesen.



Hier ein Auszug der besagten Stelle:

###############################
# the directory address of the temporary files
# (without "/root/")
#
# if filenames:
# t for template of an action
# s for success page of an action
###############################
%tempz = (
'display' => "templates/t_display.htm",
'panel' => "templates/t_panel.htm",
'modify' => "templates/t_modify.htm",
'search' => "templates/t_search.htm",
'delete' => "templates/t_delete.htm",
'error' => "templates/t_error.htm",
'register_success' => "templates/s_register.htm",
'modify_success' => "templates/s_modified.htm",
'delete_success' => "templates/s_delete.htm",
'send_password' => "templates/t_send_password.txt",
'lost_password_sent'=> "templates/s_lost_password_sent.htm",

);

###############################



Wenn ich nun als "panel" (Kontrolle des Accounts) eine Frameseite, also ein Frameset verwenden möchte, wie soll ich die Variablen an die einzelnen Seiten der Frames weitergeben?

Ich kenn mich mit CGI (noch) nicht aus, und von SSI hab ich (noch) gar keine Ahnung.
Ich bastel sozusagen an vordefinierten Scripts herum, bis sie meinen Anforderungen entsprechen.

Bitte um etwas Nachsicht, und eine leicht verständliche Antwort :rolleyes:

Oder wärs doch einfacher die Frames entgültig zu entsorgen, und alles auf einzelne Seiten zu übertragen.



Ahja, noch eine kleine Frage:

Wie lautet eine korrekte Pfadangabe in einem CGI Script, bzw. in einer der *.pl Dateien.

Angenommen ich will den Pfad zum Perl Interpreter (perl.exe) angeben.
Der Pfad unter Windows(XP) würde "D:\Perl\bin\perl.exe" lauten.

Wäre dann im Script "d:/perl/bin/perl" richtig?


MFG.Gjinn

SNo0py 11.06.2002 09:31

CGI hat mit Framesets eigentlich nix zu tun. Das eine ist eine Schnittstelle zwischen ausführbaren Programm (z.B. Perl-Script) und Server. Framesets hingegen sind ein HTML-Konstrukt.

Prinzipiell kannst mittels CGI und einem passenden Programm alles (Bilder, HTMLs, Framesets etc.) an den Browser senden, nur hast du bei Framesets das Problem, dass mehrere Seiten geladen werden und die nichts voneinander wissen.
Deswegen musst du die Session-Variablen (oder andere Werte) per GET (=http://xyz?key=wert) übermitteln.

IMHO wäre es ohne Frameset um einiges einfacher.

mfg

Gjinn 11.06.2002 10:30

OK, ich glaub ich laß das mit den Frames.

Werd mal testen, wie sich einzelne Seiten auf die Ladezeiten auswirken.

DANKE jedenfalls :)

MFG.Gjinn

SNo0py 11.06.2002 10:52

@Ladezeiten:

Da nur Text übertragen wird, sollte es relativ egal sein... Ausser das Menü ist extrem groß (viele Tabellen und so...)

mfg


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag