Salve,
ho iniziato da poco con il Perl e sto provando con un semplice script prelevato da internet e, ovviamente, non mi funziona (ho sempre utizzato il php senza particolari difficoltà).
In prtica ho creato tre files:
prova.htm (semplice form per inviare le variabilki al PERL):
<HTML>
<HEAD>
<TITLE>Menu di Link</TITLE>
</HEAD>
<BODY bgcolor="#c0c0c0">
<CENTER>
<FORM METHOD="POST" ACTION="cgi-bin/menu.cgi" >
<SELECT NAME="link">
<OPTION SELECTED>Link 1
<OPTION>Link 2
<OPTION>Link 3
<OPTION>Link 4
<OPTION>Link 5
</SELECT>
<INPUT TYPE="submit" NAME="" VALUE="OK">
</FORM>
</CENTER>
</BODY>
</HTML>
menu.cgi (copiato nella cartella cgi-bin con autor. 755)
#!/usr/bin/perl
require "cgi-lib.pl";
$menudb = "./link.db";
&ReadParse(*CGI);
&CercaLink($menudb, $CGI{link});
sub CercaLink {
local ($db, $cgi) = @_;
open (DB, "<$db");
while (<DB>) {
@campo = split(/;/, $_);
if ($campo[0] =~ /$cgi/i) {
close(DB);
last;
}
}
print "Location: $campo[1]\n\n";
exit;
}
link.db (file di testo contenente due campi separati da ; autoriz. 644)
Se lancio un programma in Perl che deve visualizzare una semplice frase a video, il server remoto risponde mentre se lancio il programma listato sopra risponde con un Internal Error.
Potete indicarmi dove sbaglio?
Grazie