Thread Perl_cgi oder mod_perl
(24 answers)
Opened by Gast at 2007-11-01 23:03
Ich habe die Original Konfiguration von Apache verwendet.
Ich werde mal versuchen, sie entsprechend anzupassen. Falls von Interesse. Ich habe das Beispiel von Selfhtml auf meinen Fall abgeändert und es ist tatsächlich der gleiche Effekt. Wenn ich das nachfolgende Programm aufrufe mit test.pl?zahl=1 und dann nochmal mit test.pl?zahl=2, so wird 2 richtig eingelesen, in dem Unterprogramm wird aber nach wie vor 1 ausgegeben. Wenn ich $zahl global definiere, läuft das Programm auch im lokalen System korrekt, das kann aber doch nicht die Lösung sein, denn dies widerspräche allen Empfehlungen, globale Variablen zu vermeiden. test.pl: #!/usr/bin/perl -w use strict; my ($zahl); sub getinc {print "*** \$zahl in getinc: $zahl ***<br>"; # alter Wert: Fehler } use CGI; use CGI::Carp qw(fatalsToBrowser); print <<AAA; Content-type: text/html\n\n <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head></head><body> AAA my $query = new CGI; $zahl = $query->param('zahl'); print "*** \$zahl zum Programmbeginn: $zahl ***<br>"; # neuester übergebener Wert: In Ordnung getinc (); print <<GGG; </div> </body> </html> GGG |