redirect über ID script
andreasf
- cgi
wer kenn denn nicht solche scripts bei den man in einer datei paar links gespeichert hat und dann per script diese daten abrufen will... bei mir klappts nur nicht so richtig:
#!/usr/bin/perl
use CGI;
use CGI::Carp qw(fatalsToBrowser);
my $query = new CGI;
my $ID = $query->param("ID");
open (REDIRURL, "<redirconf.dat") || die "datei nicht gefunden ";
@redir = split /::/, <REDIRURL>;
close(REDIRURL);
if ("$ID" eq "$redir[0]") {
print "Location: $redir[1]\n\n";
}
exit;
und zwar will ich über einen link http://www.domain.de/cgi-bin/redir.cgi?ID=1 dann den zugehörigen link für die nr. 1 haben.
aber ich weis nicht wie ich die zeilen einzeln ansprechen kann z.b. mit ID nr. 2
oder kann man sich irgendwo so einscript runterladen so zum vergeleich-lernnen-testen?
danke
#!/usr/bin/perl
use CGI;
use CGI::Carp qw(fatalsToBrowser);
my $query = new CGI;
my $ID = $query->param("ID");
open (REDIRURL, "<redirconf.dat") || die "datei nicht gefunden ";
@redir = split /::/, <REDIRURL>;
close(REDIRURL);
Das erscheint mir falsch:
if ("$ID" eq "$redir[0]") {
print "Location: $redir[1]\n\n";
}
IMHO sollte dies besser sein:
if ($ID <= $#redir) {
print "Location: $redir[$ID]\n\n";
} else {
print "Location: $redir[$#redir]\n\n";
}
exit;
Nämlich dann, wenn in der Datei redirconf.dat nur URLs stehen
und ID die Zeile definiert.
Ciao,
Wolfgang
P.S.: Das Location ist etwas mangelhaft, da muesste noch etwas mehr stehen, aber dazu schau mal in die Dokus im Web dazu.
bis dahin ja schon ok, aber das script liest immer nur noch die erste zeile in der datenbank ab.
also bei dem links
http://www.domain.de/cgi-bin/redir.cgi?ID=1
http://www.domain.de/cgi-bin/redir.cgi?ID=2
http://www.domain.de/cgi-bin/redir.cgi?ID=3
...
liest das script trotzdem nur die erste zeile
kann man das nicht irgdenwie realisieren das man zeilenzahlen ansteuern kann?
Hi Andreas,
aber das script liest immer nur noch die erste zeile
welches Skript?
kann man das nicht irgdenwie realisieren das man zeilenzahlen
ansteuern kann?
Genau das hat xwolf Dir gerade eingebaut:
Wenn ID kleiner oder gleich der Anzahl der vorhandenen Links,
Viele Grüße
Michael
sorry, funktioniert doch... hab nur ein klitze kleines detail vergessen.
also DANKE es funktioniert