xNeTworKx: Here dokuments

#include <h.allo>

Woran liegt das, das diese here documents manchmal funktionieren, manchmal nicht. Das macht mich noch wahnsinnig. Einmal gehts, plötzlich irgendwann gehts nicht mehr. Immer die gleiche Meldung :
WARUM ?
Cant find string terminator EOF anywhere at EOF at forum.cgi line 8

#!/usr/bin/perl -w

use CGI;
use strict;

my $query = new CGI;
print $query->header;
print <<EOF;
   <html>
   <head>
   <style type="text/css">
   h1{font-size:50px; color:#ff0000};
   body {font-size:20px; font-family:Verdana, sans serif; color:#000000}
   .acid{color:#0000ff};
   </style>
   <title>Forum</title>
   </head>
   <body>
   <h1>ACHTUNG !</h1>
   Die neue Adresse fürs Forum lautet
   <span class="acid"><a href="http://forum.acid4u.com">forum.acid4u.com</a></span>.<br>
   Du wirst in 10 Sekunden automatisch weitergeleitet.
   <script type="text/javascript">
   function leiten()   {
   window.location.href="http://forum.acid4u.com";
   }
   window.setTimeout("leiten()",10000);
   </script>
   </body>
   </html>
EOF

  1. Moin!

    Woran liegt das, das diese here documents manchmal funktionieren, manchmal nicht. Das macht mich noch wahnsinnig. Einmal gehts, plötzlich irgendwann gehts nicht mehr. Immer die gleiche Meldung :
    WARUM ?

    Den Terminator immer an den Anfang der Zeile (d.h. OHNE Leerzeichen davor!) und mit Zeilenumbruch abgeschlossen werden (AUCH in der letzten Zeile!).

    So long

    --
    "Wer den freien Genuss von Cannabis befürwortet, nimmt in verantwortungsloser Weise den Tod von Tausenden junger Menschen in Kauf."
        -- Dr. Edmund Stoiber, 1997

    1. Hi,

      Den Terminator immer an den Anfang der Zeile (d.h. OHNE Leerzeichen davor!) und mit Zeilenumbruch abgeschlossen werden (AUCH in der letzten Zeile!).

      Ja, auf das bin ich draufgekommen, aber er befindet sich ganz am Anfang der Zeile, sowohl print <<EOF;  als auch EOF ?

      1. Re!

        Ja, auf das bin ich draufgekommen, aber er befindet sich ganz am Anfang der Zeile, sowohl print <<EOF;  als auch EOF ?

        Kannst Du mal ein Script, in dem es nicht funktioniert, unveraendert online stellen? Vielleicht finden wir dann noch einen Fehler.

        So long

        --
        "Wer den freien Genuss von Cannabis befürwortet, nimmt in verantwortungsloser Weise den Tod von Tausenden junger Menschen in Kauf."
            -- Dr. Edmund Stoiber, 1997

        1. #include <h.allo>

          Es ist das Script vom Anfang :
          <?m=52803&t=9552>

          1. use Mosche;

            Es ist das Script vom Anfang :
            <?m=52803&t=9552>

            Benutze den -w Switch für Perl (bzw. use warnings).
            Dann kommt bei mir bei der Benutzung von

            print << EOF;

            folgende Warnung:
            Use of bare << to mean <<"" is deprecated at ./mkm line 3.

            Also:

            print << "EOF";
            dann funktioniert es auch...

            use Tschoe qw(Matti);

    2. "Wer den freien Genuss von Cannabis befürwortet, nimmt in verantwortungsloser Weise den Tod von Tausenden junger Menschen in Kauf."
          -- Dr. Edmund Stoiber, 1997

      Hallo Calocybe,

      einfach zu schön, dass man die bayuwarische Wohnbevölkerung mit sowas begeistern kann.... Hoffentlich klappt's nun auch auf Bundesgebiet! Ich hatte mich eigentlich schon anders entschieden, aber jetzt wähle ich es natürlich, das künstlich erregte Männlein aus dem Süden. Das Gefühl, mit einem Kreuz tausende junger Menschen gerettet zu haben, kann ich mir einfach nicht entgehen lassen!

      Viele Grüße

      Mathias Bigge

  2. #include <h.allo>

    ach gott ach gott, die gänsefüßchen, ok danke.