User since
2003-08-04
14371
Artikel
ModeratorIn
Nimm mal das
use HTML::Template::Compiled raus. Das dürfte bei Dir nicht installiert sein und wird für meine Variante nicht benötigt...
Dafür kannst Du
use CGI::Carp qw(fatalsToBrowser) einfügen!
User since
2003-08-04
12209
Artikel
Admin1
[quote=Rocco,27.06.2006, 23:11]aber leider einen Internal Server Error erhalten.
auf das serverlogfile hab ich leider keinen zugriff.[/quote]
wir haben auch keinen zugriff auf dein serverlog - so ein pech aber auch.
wie gut, dass es
einige Ratschläge zum Thema server error gibt.
User since
2005-11-18
37
Artikel
BenutzerIn
@renee hab ich gemacht, hat aber leider nix gebracht, noch immer internal server error.
@alle anderen -
ich hatte (habe) ein funktionierendes suchsript von matt wright.
das einzige was ich wollte, war in diesem suchscript eine bedingung einzubauen, damit die suche erst ab einem bestimmten bereich beginnt.
selber hab ich sogut wie keine perlkentnisse, deswegen meine anfrage hier im forum.
hätt ich gewusst, dass es dermassen kompliziert wird, hätt ichs gelassen und mich nach anderen alternativen umgesehen.
für mich gibts ausserdem nur 2 arten von scripts, solche die funktionieren und solche die es nicht tun, dabei ist mir vollkommen wurscht, ob die 1867 programmiert wurden und heutigen standards entsprechen oder nicht.
tatsache ist das ich mich verschätzt habe, denn ich dachte allen ernstes die funktionsweise des suchscripts so zu erweitern, dass es erst ab einem bestimmten bereich beginnt ist für einen perlprogrammierer eine sache von max. 5 minuten,
aber vielleicht kriegen wirs ja doch noch hin, denn renee und dubu haben wirklich versucht mir zu helfen - danke dafür.
User since
2003-08-04
14371
Artikel
ModeratorIn
Wenn Du das
use CGI::Carp qw(fatalsToBrowser) drin hast, sollte im Browser eine Fehlermeldung ausgegeben werden. Kannst Du die bitte posten??
User since
2005-11-18
37
Artikel
BenutzerIn
krieg ich leider nicht, das script ist noch immer hier eingebunden ->
http://www.lottermoser.at/test/searchtest.htm
und bei mir kommt da leider nur der server error sonst nix.
User since
2003-08-04
14371
Artikel
ModeratorIn
hast Du das als erstes nach dem
#!/usr/bin/perl eingefügt??
User since
2005-11-18
37
Artikel
BenutzerIn
User since
2005-11-18
37
Artikel
BenutzerIn
ahja, danke - ok jetzt funktioniert die fehlermeldung.
ich poste gleich die fehlermeldungen:
Global symbol "$term" requires explicit package name at /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl line 50.
Global symbol "$term" requires explicit package name at /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl line 51.
Global symbol "$term" requires explicit package name at /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl line 51.
Global symbol "$term" requires explicit package name at /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl line 52.
Global symbol "$string" requires explicit package name at /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl line 76.
Execution of /home/netzgrafik/www.lottermoser.at/test/scripts/search5.pl aborted due to compilation errors.
User since
2003-08-04
12209
Artikel
Admin1
man sollte die
links, die gepostet werden, ab und an auch mal
anklicken und vielleicht sogar durchlesen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Würde man dieses folgendermaßen modifizieren
use strict;
$line = <STDIN>;
chomp $line;
print "Der Benutzer hat $line eingegeben.\n";
dann würde Perl sich weigern, das Skript auszuführen und ausgeben:
Global symbol "$line" requires explicit package name at foo.pl line 2.
Global symbol "$line" requires explicit package name at foo.pl line 3.
Global symbol "$line" requires explicit package name at foo.pl line 4.
Execution of foo.pl aborted due to compilation errors.
Dies ist aber kein Nachteil von strict sondern vielmehr ein Vorteil. Denn die Mission von strict ist es, einen gewissen Programmierstil aufzuzwingen, der von dem obigen Script aber nicht eingehalten wird.
Die Lösung dieses Problems ist das Wort "my":
use strict;
my $line = <STDIN>;
chomp $line;
print "Der Benutzer hat $line eingegeben.\n";
trotzdem lies dir bitte den ganzen artikel durch.