cgi script aus cgi script starten
mike_nummer_sowieso
- cgi
hi all,
vorneweg ich bin ein ziemlicher newbie in sachen perl & cgi.
ich möchte meinen linux server da heim mit hilfe einer selbst geschriebenen cgi-weboberfläche administrieren. dazu habe ich verschiedene cgi scripte geschrieben. diese erledigen ihre arbeit auch fehlerfrei. nun möchte ich die verschiedenen scripte untereinander verbinden. also, jedes script ist in ein if & ein else abschnitt unterteilt. wenn nun der else abschnitt vollständig abgearbeitet ist, soll das laufende cgi script ein neues cgi script starten und sich(das "alte" laufende script) danach beenden.
ich habe es mit hilfe von exec versucht zu realisieren. leider ergibt sich daraus folgendes problem. das neue script wird gestartet. der if abschnitt wird fehlerfrei dargestellt. nur sobald das neue script, das ergebnis des else abschnitts darstellen soll, bekomme ich den fehler das das script kein cgi script wäre. ich progge mit dem cgi modul.
für jede anregung/hilfe wäre ich dankbar. cu :o) mike
use Mosche;
ich möchte meinen linux server da heim mit hilfe einer selbst geschriebenen cgi-weboberfläche administrieren. dazu habe ich verschiedene cgi scripte geschrieben. diese erledigen ihre arbeit auch fehlerfrei. nun möchte ich die verschiedenen scripte untereinander verbinden. also, jedes script ist in ein if & ein else abschnitt unterteilt. wenn nun der else abschnitt vollständig abgearbeitet ist, soll das laufende cgi script ein neues cgi script starten und sich(das "alte" laufende script) danach beenden.
ich habe es mit hilfe von exec versucht zu realisieren. leider ergibt sich daraus folgendes problem. das neue script wird gestartet. der if abschnitt wird fehlerfrei dargestellt. nur sobald das neue script, das ergebnis des else abschnitts darstellen soll, bekomme ich den fehler das das script kein cgi script wäre. ich progge mit dem cgi modul.
Langwierige, gründliche Methode:
Du schreibst deinen Code um, so daß die entsprechenden Subroutinen in eigenen Modulen liegen. Die kannst du dann aus jedem CGI-Skript, welches das Modul einbindet, aufrufen.
Schnelle Methode:
Benutze aus LWP::Simple ('perldoc LWP::Simple') die get() Methode, um einen HTTP-Request auf das neue CGi-Skript zu starten. Du kannst dessen Code dann gleich ausgeben.
use Tschoe qw(Matti);
Langwierige, gründliche Methode:
Du schreibst deinen Code um, so daß die entsprechenden Subroutinen in eigenen Modulen liegen. Die kannst du dann aus jedem CGI-Skript, welches das Modul einbindet, aufrufen.
ich habe, so denke ich, das prinzip verstanden. weiss aber nicht wie ich html output, quasi dynamisch, mit hilfe eines perl moduls realisieren kann.
Schnelle Methode:
Benutze aus LWP::Simple ('perldoc LWP::Simple') die get() Methode, um einen HTTP-Request auf das neue CGi-Skript zu starten. Du kannst dessen Code dann gleich ausgeben.use Tschoe qw(Matti);
ich werd mirs mal durchlesen...
Hab Dank für die prompte Hilfe...
cu mike
Ein anderes Programm (ob Perl oder nicht) kannst Du auch mit dem perl-Befehl "system" starten.