Anzeige im Internet Explorer ok, sonst nicht
Gast
- perl
0 Gast0 *Markus0 Gast
0 wahsaga0 Gast0 Christoph Schnauß
Hi,
mein erster Versuch und schon so eine Enttäuschung!
Mein erstes Perl-Script test.pl läuft im IE, in Opera, Firefox und Netscape wird aber der Quelltext angezeigt.
Woran kann das liegen?
Danke für Eure Hilfe
Hi,
mein erster Versuch und schon so eine Enttäuschung!
Mein erstes Perl-Script test.pl läuft im IE, in Opera, Firefox und Netscape wird aber der Quelltext angezeigt.
Woran kann das liegen?
Danke für Eure Hilfe
Die Beschreibung war unklar bis falsch! Entschuldigung!
Das Perl-Script erzeugt eine HTML-Ausgabe, diese wird im IE richtig als HTML-Seite ausgegeben und in den anderen nicht.
Hallo,
Das Perl-Script erzeugt eine HTML-Ausgabe, diese wird im IE richtig als HTML-Seite ausgegeben und in den anderen nicht.
Unsinn, denn genau der IE macht es falsch, da er meint, er müsse alles als text/html interpretieren, wobei doch offensichtlich ein ganz anderer Content-type verwendet wird. Wieder mal ein gutes Beispiel für die Unzulänglichkeit dieses Browsers.
Markus.
Hallo,
Unsinn, denn genau der IE macht es falsch, da er meint, er müsse alles als text/html interpretieren, wobei doch offensichtlich ein ganz anderer Content-type verwendet wird. Wieder mal ein gutes Beispiel für die Unzulänglichkeit dieses Browsers.
Danke für den 'Unsinn'.
Man wagt ja gar nicht mehr, Fragen zu stellen!
Hallo,
Unsinn, denn genau der IE macht es falsch, da er meint, er müsse alles als text/html interpretieren, wobei doch offensichtlich ein ganz anderer Content-type verwendet wird. Wieder mal ein gutes Beispiel für die Unzulänglichkeit dieses Browsers.
Danke für den 'Unsinn'.
Man wagt ja gar nicht mehr, Fragen zu stellen!
Immer diese Anti-IE-Stimmung! Sollen die Herrschaften doch ihren falsch programmierten und unsicheren selbsternannten "Fuchs" ablecken bis in alle Ewigkeit - die werden schon sehen,w as dabei rauskommt.
Hallo Heinz.
Immer diese Anti-IE-Stimmung! Sollen die Herrschaften doch ihren falsch programmierten und unsicheren selbsternannten "Fuchs" ablecken bis in alle Ewigkeit - die werden schon sehen,w as dabei rauskommt.
Das ist ja wohl eine bodenlose Frechheit! Es ist ein Panda und kein Fuchs!
Einen schönen Montag noch.
Gruß, Ashura
Hi,
Das ist ja wohl eine bodenlose Frechheit! Es ist ein Panda und kein Fuchs!
*nochmal auf den Desktophintergrund mit dem Firefox-Logo blick*
...sieht mir aber verdammt stark nach Fuchs aus!
Obwohl die vom Mozilla-Team sich scheinbar ach nicht ganz sicher sind, im Fanshop gibts nen Plüsch-Panda als Maskottchen ;-)
Gruß,
Harlequin
Hallo,
Danke für den 'Unsinn'.
Man wagt ja gar nicht mehr, Fragen zu stellen!
Warum fängst du denn jetzt an zu flennen? Es ist eben Unsinn, dass es der IE richtig macht. Warum du das persönlich nimmst, verstehe ich nicht.
Immer diese Anti-IE-Stimmung! Sollen die Herrschaften doch ihren falsch programmierten und unsicheren selbsternannten "Fuchs" ablecken bis in alle Ewigkeit - die werden schon sehen,w as dabei rauskommt.
Warum sollte ich einen Fuchs ablecken? Was hätte ich davon?
Markus.
hallo *Markus,
Warum sollte ich einen Fuchs ablecken? Was hätte ich davon?
Fuchsbandwürmer.
Grüße aus Berlin
Christoph S.
Hi,
Warum fängst du denn jetzt an zu flennen? Es ist eben Unsinn, dass es der IE richtig macht.
Er macht es ja eben NICHT richtig - er macht es vielleicht so, wie Gast sich das gewünscht hat, aber richtig ist es deswegen nicht.
cu,
Andreas
Hallo MudGuard.
Es ist eben Unsinn, dass es der IE richtig macht.
Er macht es ja eben NICHT richtig - […]
Das schrieb Markus doch bereits?
Einen schönen Dienstag noch.
Gruß, Ashura
hallo,
Danke für den 'Unsinn'.
Man wagt ja gar nicht mehr, Fragen zu stellen!
Du solltest jetzt nicht beleidigte Leberwurst spielen. Im übrigen ist es tatsächlich so wie Markus gesagt hat. Mach einfach mal eine Probe: schreibe dir eine beliebige Tstdatei, in der du ein paar kleine HTML-Elemente verwendest. Es reicht, wenn du nur
<p>Dies ist ein Test
hineinschreibst. Speichere sie mit der Endung *.htm ab. Wenn du sie mit dem IE öffnest, wird er sie dir als HTML anzeigen. Die "anderen" machen es richtig und zeigen dir den Quelltext.
Grüße aus Berlin
Christoph S.
Du solltest jetzt nicht beleidigte Leberwurst spielen.
Das hat doch damit nichts zu tun.
Wenn aber ein Anfänger eine Frage stellt, dann ist die aus Sicht der Profis oft dumm. Wobei es dumme Fragen eigentlich gar nicht gibt, nur dumme Antworten.
hi,
Mein erstes Perl-Script test.pl läuft im IE, in Opera, Firefox und Netscape wird aber der Quelltext angezeigt.
Woran kann das liegen?
Vermutlich wird die Ausgabe deines Scriptes lediglich mit dem Content-Type-Header text/plain ausgeliefert - ob es eigentlich text/html sein sollte.
gruß,
wahsaga
Hi,
sind eigentlich die beiden unten stehenden Content-type - Angaben gleichwertig?
Welche ist sinnvoller oder müssen beide angegeben werden?
Welche charset-Angabe ist sinnvoll für deutsche Homepage?
print "Content-type: text/html\n"; # <======================
print "<HTML><HEAD>\n";
print "<META http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>\n"; # <======================
print "<META http-equiv='Content-Language' content='de'>\n";
.......
hallo,
sind eigentlich die beiden unten stehenden Content-type - Angaben gleichwertig?
Du möchtest dir bitte http://de.selfhtml.org/perl/sprache/cginotwendig.htm noch einmal richtig durchlesen und dir auch die angegebenen Beispiele _genau_ anschauen.
Grüße aus Berlin
Christoph S.
Hallo Christoph.
Du möchtest dir bitte http://de.selfhtml.org/perl/sprache/cginotwendig.htm noch einmal richtig durchlesen und dir auch die angegebenen Beispiele _genau_ anschauen.
Hm, warum terminiert man in Perl Header eigentlich mit LF+LF an Stelle von CR+LF, wie es in HTTP definiert ist?
Einen schönen Montag noch.
Gruß, Ashura
Hell-O!
Hm, warum terminiert man in Perl Header eigentlich mit LF+LF an Stelle von CR+LF, wie es in HTTP definiert ist?
Da steht, dass der Header durch eine Leerzeile abgeschlossen wird. Und da Perl eine schlaue Programmiersprache ist, behandelt es "\n" als sog. logisches Newline und entscheidet plattformabhängig selber, wie auf dem jeweiligen System der Zeilenvorschub repräsentiert wird. Und die Entscheidung ist immer richtig :-)
Siechfred
Hi,
Hm, warum terminiert man in Perl Header eigentlich mit LF+LF an Stelle von CR+LF, wie es in HTTP definiert ist?
Da steht, dass der Header durch eine Leerzeile abgeschlossen wird.
Und da steht, daß eine Zeile mit CRLF abgeschlossen wird.
Und da Perl eine schlaue Programmiersprache ist, behandelt es "\n" als sog. logisches Newline und entscheidet plattformabhängig selber, wie auf dem jeweiligen System der Zeilenvorschub repräsentiert wird.
Das Zeilenende in http ist aber nicht plattformabhängig, sondern immer CRLF.
Man sollte also \0x0d\0x0a verwenden.
Und die Entscheidung ist immer richtig :-)
Nein.
cu,
Andreas
Hell-O!
Und da steht, daß eine Zeile mit CRLF abgeschlossen wird.
Deswegen war Ashuras Frage so nicht richtig. Er fragte nämlich nach "CR+LF" statt "LF+LF", richtig hätte er fragen müssen "CRLF+CRLF" statt "LF+LF".
Das Zeilenende in http ist aber nicht plattformabhängig, sondern immer CRLF.
Deswegen:
Und die Entscheidung ist immer richtig :-)
Nein.
Doch.
Nochmal zur Klarstellung:
Wird in Perl innerhalb eines Scriptes in einer print-Anweisung ein logisches Newline verwendet, entscheidet Perl (m.W. während der Kompilierung des Scriptes) in Abhängigkeit von der Plattform und vom Kontext, wie es dieses Newline auszugeben hat, sodass in diesem Fall aus dem "\n\n" im Script "CRLF+CRLF" als Headerabschluss wird.
Siechfred
Hallo Siechfred.
Wird in Perl innerhalb eines Scriptes in einer print-Anweisung ein logisches Newline verwendet, entscheidet Perl (m.W. während der Kompilierung des Scriptes) in Abhängigkeit von der Plattform und vom Kontext, wie es dieses Newline auszugeben hat, sodass in diesem Fall aus dem "\n\n" im Script "CRLF+CRLF" als Headerabschluss wird.
Danke für die erläuternden Worte. Irgendwann werde ich mich wohl wirklich einmal mit Perl befassen müssen.
Einen schönen Dienstag noch.
Gruß, Ashura
Moin!
Nochmal zur Klarstellung:
Wird in Perl innerhalb eines Scriptes in einer print-Anweisung ein logisches Newline verwendet, entscheidet Perl (m.W. während der Kompilierung des Scriptes) in Abhängigkeit von der Plattform und vom Kontext, wie es dieses Newline auszugeben hat, sodass in diesem Fall aus dem "\n\n" im Script "CRLF+CRLF" als Headerabschluss wird.
Ich glaube, du dichtest Perl da Fähigkeiten an, die es nicht hat.
Insbesondere kann das schlichte Perl-Skript nicht wissen, dass die ersten paar Zeilen seines Outputs als HTTP-Header zu verstehen sind, und die nachfolgenden als HTTP-Body - und nur beim Header CRLF verpflichtend ist, sonst aber nicht.
Im Gegenteil: Der Apache greift ein. Alle Perl-Skripte (außer die, deren Namen mit "nph-" beginnt - steht für "non-parsed header") liefern ihre Ausgabe an den Apachen, der diese Ausgabe puffert, "korrekt macht", noch weitere HTTP-Header einfügt etc., und den Inhalt am Ende dann an den Browser schickt.
Der Apache selbst empfängt also durchaus nur LF, aber da er gewohnt ist, bei den Linefeeds tolerant zu sein, erkennt er sie als Headertrennung an, ersetzt sie bei der Auslieferung aber HTTP-konform durch CRLF.
- Sven Rautenberg
Hell-O!
Ich glaube, du dichtest Perl da Fähigkeiten an, die es nicht hat.
Nein, ich glaube nicht. Auf die Schnelle gefunden:
Der Apache greift ein.
Ja, da hast du Recht, denn dieser macht aus einem
print "Content-type: text/html\n\n";
einen korrekten HTTP-Header inklusive der CRLFs. Ich hoffe, dass man mir diese kleine aber wesentliche Ungenauigkeit in meinem letzten Posting nachsieht :-)
Alle Perl-Skripte (außer die, deren Namen mit "nph-" beginnt - steht für "non-parsed header") liefern ihre Ausgabe an den Apachen, der diese Ausgabe puffert, "korrekt macht", noch weitere HTTP-Header einfügt etc., und den Inhalt am Ende dann an den Browser schickt.
Ist mir bekannt, siehe http://forum.de.selfhtml.org/archiv/2006/4/t128349/#m829164 ff. (wo ist eigentlich CK abgeblieben?)
Der Apache selbst empfängt also durchaus nur LF
Soweit ich weiß, erhält er das für das Betriebssystem, auf dem er läuft, gültige Newline, sollte ich mich irren, täte es mir Leid um die Verwirrung, die ich gestiftet habe :-)
Siechfred
Du möchtest dir bitte http://de.selfhtml.org/perl/sprache/cginotwendig.htm noch einmal richtig durchlesen und dir auch die angegebenen Beispiele _genau_ anschauen.
Das hat mich leider nicht weitergebracht, da dort die Angabe
"<META http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>\n" gar nicht erwähnt wird.
Aber das ist dann wohl eher eine HTML-Frage?
hallo,
Du möchtest dir bitte http://de.selfhtml.org/perl/sprache/cginotwendig.htm noch einmal richtig durchlesen und dir auch die angegebenen Beispiele _genau_ anschauen.
Das hat mich leider nicht weitergebracht, da dort die Angabe
"<META http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>\n" gar nicht erwähnt wird.
Aha. Wenn sie nicht erwähnt wird, kann man doch Rückschlüsse ziehen, warum das wohl so ist. Das Beispiel ist so knapp gefaßt, daß es tatsächlich nur die unmittelbar erforderlichen Zeilen enthält. Dein <meta> ist also nicht zwingend erforderlich, aber du darfst es natürlich gern dazuschreiben.
Grüße aus Berlin
Christoph S.