Steffi: guestbook script anpassen

moin moin! wir haben folgendes problem: vielleicht kann ja jemand helfen! wir haben auf unserer seite ein guestbook eingerichtet, was auch bis auf unser problem ausgezeichnet läuft. das problem: das perl script generiert einen www-link. wenn man ihn dann öffnen möchte, passiert das im selben frame! weiss irgendjemand, wie man das im perl script ändern kann?!
vielen dank für eure hilfe

hier der quelltext aus dem perl script:(auszug):
...........

if ($FORM{'url'} =~ /^http://([^/]+)/i) {

print GUEST "<tr><td align="right"><font face="Verdana" size="2" color="#000066"><b>URL :</b></font></td>\n";

print GUEST "<td><a href="$FORM{'url'}"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

}

print GUEST "<tr><td align="right"><font face="Verdana" size="2" color="#000066"><b>Datum :</b></font></td>\n";

print GUEST "<td><font face="Verdana" size="2" color="#000066">$date</font></td></tr>\n";

print GUEST "<tr><td colspan="2"><hr></td></tr>\n\n";
      }

else { print GUEST $_; }
}

close (GUEST);

print "Location: $guestbook_url\n\n";
exit;

  1. Hi Steffi,

    welchen www.link meinst du denn? wenn du den innerhalb der if schleife meinst, dann füge einfach folgendes in das script ein:

    »»print GUEST "<td><a href="$FORM{'url'}"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

    print GUEST "<td><a href="$FORM{'url'}" target="_blank"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

    MfG Sebastian

    1. Vielen Dank für deine hilfe! hat geklappt! Hatte das ganze ohne \ versucht. aber jetzt lüppts.
      danke

      Hi Steffi,

      welchen www.link meinst du denn? wenn du den innerhalb der if schleife meinst, dann füge einfach folgendes in das script ein:

      »»print GUEST "<td><a href="$FORM{'url'}"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

      print GUEST "<td><a href="$FORM{'url'}" target="_blank"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

      MfG Sebastian

      1. Hallo Steffi,

        zu deinem Problem mit dem "ohne ", falls du es jetzt noch nicht weißt:

        Du musst Zeichen wie " immer mit einem backslash voran in den quelltext schreiben, wenn sie nciht zu dem Programmcode selber gehören sollen. In deinem Fall hat der Interpreter das " ohne \ als Ende des 'print GUEST'-Befehles interpretiert.
        Am besten du golgst einmal meinem obigem Link. Dort findest Du noch mehr solche Beispiele und was du sontiges noch beachten musst! Schaue vorallem mal unter 'Maskierung von Zeichenketten'!

        Viel Spass mit Perl noch

        Sebastian

  2. use Mosche;

    wir haben auf unserer seite ein guestbook eingerichtet, was auch bis auf unser problem ausgezeichnet läuft. das problem: das perl script generiert einen www-link. wenn man ihn dann öffnen möchte, passiert das im selben frame! weiss irgendjemand, wie man das im perl script ändern kann?!

    if ($FORM{'url'} =~ /^http://([^/]+)/i) {

    Der Autor des Guestbooks scheint noch nie etwas von CGI.pm gehört zu haben.

    print GUEST "<tr><td align="right"><font face="Verdana" size="2" color="#000066"><b>URL :</b></font></td>\n";

    Und von here-Documents auch nicht :-)

    print GUEST "<td><a href="$FORM{'url'}"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

    Abgesehen davon musst du nur diese Zeile ändern:
         print GUEST "<td><a href="$FORM{'url'}" target="_blank"><font face="Verdana" size="2" color="#000066">$FORM{'url'}</a></font></td></tr>\n";

    Im Übrigen würde ich dieses Guestbook mal dringend verbessern - Stichwort font-Tag, CGI.pm, here-docs,...

    use Tschoe qw(Matti);

    1. Hallo Matti,

      ist ja schön, dass du den Leuten hier im Forum helfen möchtest, aber die Leute, die hier fragen, möchten meitens Antwort zu einer schnellen Lösung ihres Problems so wie dein 3. Einwurf. Dass, wenn ich oben genanntes Problem habe, bisher nichts von CGI.pm und here-Documents gehört habe, ist ja wohl verständlich...

      MfG Sebastian

      1. use Mosche;

        ist ja schön, dass du den Leuten hier im Forum helfen möchtest, aber die Leute, die hier fragen, möchten meitens Antwort zu einer schnellen Lösung ihres Problems so wie dein 3. Einwurf. Dass, wenn ich oben genanntes Problem habe, bisher nichts von CGI.pm und here-Documents gehört habe, ist ja wohl verständlich...

        Trotzdem ist es doch wohl auch für die Fragestellerin hilfreich, entsprechende Tips zu erhalten, gerade wenn der Fehler, den sie (und ich in meiner Antwort unachtsamerweise auch) gemacht hat, durch etwas wie die here-documents vermeidbar gewesen wären, weil sie sich nicht hätte um das Quoting kümmern müssen. Natürlich hätte ich das ganze noch erläutern können, ich traue ihr aber noch durchaus zu, http://www.google.de mit den Stichwörtern 'perl' und 'here document' zu benutzen. Ich halte es immer für gut, den Fragestellern auch Techniken beizubringen, wie sie nächstes Mal die Fehler vermeiden können, wie in deinem 2. Posting.

        Außerdem scheint das benutzte Guestbook (ohne CGI.pm) wirklich nicht vom neuesten Stand zu sein...

        use Tschoe qw(Matti);