![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: m0ritz brandt, 28. 10. 1998, 19:41
Wenn von einem CGI Script eine
dynamisch erzeugte HTML Datei ausgegeben wird
kann man dies tuen indem man einen
HTTP Header voranschickt und dann nach Kindergartenprinzip
immer print""; davorschreibt!
Geht das nicht auch einfacher?
z.B dass man dem script sagt vo die print Anweisung anfängt und
wo sie aufhört?
Ausserdem wäre es nett wenn jemand die berühmten Post-Codes,
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s/<!--(.|\n)*-->//g;
entschlüsseln koennte! (wenn auch nur annähernd)!
Danke schon mal im voraus!
m0b
Die folgende Nachricht zum Thema stammt von: Frank Schönmann, 28. 10. 1998, 19:59
hi!
»» Wenn von einem CGI Script eine
»» dynamisch erzeugte HTML Datei ausgegeben wird
»» kann man dies tuen indem man einen
»» HTTP Header voranschickt und dann nach Kindergartenprinzip
»» immer print""; davorschreibt!
»» Geht das nicht auch einfacher?
Doch, wenn ich dich richtig verstanden habe schon:
print << "EOT";
Content-Type: text/html
hier steht die html-ausgabe...
EOT
»» z.B dass man dem script sagt vo die print Anweisung anfängt und
»» wo sie aufhört?
s.o.
»» Ausserdem wäre es nett wenn jemand die berühmten Post-Codes,
»»
»» $value =~ tr/+/ /;
Sucht nach "+" in $value und ersetzt es durch ein Leerzeichen. Allerdings fehlt bei dir am Ende (vor dem ;) ein Parameter, damit alle "+"-Zeichen in $value ersetzt werden! Zur Zeit wird nur das erste gefunden.
»» $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
Sucht in $value nach "%" gefolgt von zwei Zeichen aus den Bereichen a-f, A-F und 0-9, also nach hexadezimalen Angaben. Das ganze wird durch "pack("C", hex($1))" in ein lesbares Zeichen umgewandelt. "$1" ist dabei die Rückreferenzierung auf den gefundenen Ausdruck.
»» $value =~ s/<!--(.|\n)*-->//g;
Such in $value nach "<!--", dann entweder einem Zeichen (".") oder Zeilenvorschub ("\n"), das/der beliebig oft vorkommt ("*"), wieder direkt gefolgt von "-->", und ersetze das Gefundene durch gar nichts (=löschen). Auf den ersten Blick sieht es so aus, als würden damit HTML-Kommentare entfernt.
»» entschlüsseln koennte! (wenn auch nur annähernd)!
Ich hoffe, das hat geholfen ;)
bye, Frank!
Die folgende Nachricht zum Thema stammt von: m0ritz brandt, 28. 10. 1998, 21:28
»» »» $value =~ tr/+/ /;
»»
»» Sucht nach "+" in $value und ersetzt es durch ein Leerzeichen. Allerdings fehlt bei dir am Ende (vor dem ;) ein Parameter, damit alle "+"-Zeichen in $value ersetzt werden! Zur Zeit wird nur das erste gefunden.
»»
»» bye, Frank!
Hi Frank!
Danke erstmal!
Aber:
"+" in CGi bedeutet ja gleich leerzeichen!!
(so ungefähr)
Mein script findet aber alle leerzeichen!!
Warum, wenn es deiner Meinung nach ein Fehler ist?
m0b
Die folgende Nachricht zum Thema stammt von: Frank Schönmann, 28. 10. 1998, 23:48
hi!
»» »» »» $value =~ tr/+/ /;
»» »»
»» »» Sucht nach "+" in $value und ersetzt es durch ein Leerzeichen. Allerdings fehlt bei dir
»» »» am Ende (vor dem ;) ein Parameter, damit alle "+"-Zeichen in $value ersetzt werden!
»» »» Zur Zeit wird nur das erste gefunden.
»» Aber:
»» "+" in CGi bedeutet ja gleich leerzeichen!!
»» (so ungefähr)
»» Mein script findet aber alle leerzeichen!!
»» Warum, wenn es deiner Meinung nach ein Fehler ist?
Sorry, ich hab das "tr" übersehen. Wenn da ein "s" gestanden hätte, dann hätte der Parameter gefehlt, so funktioniert es natürlich auch. Aber "tr" findet auch keine regulären Ausdrücke, sondern nur einzelne Zeichen.
bye, Frank!
Die folgende Nachricht zum Thema stammt von: m0ritz brandt, 29. 10. 1998, 00:47
»»
»» Sorry, ich hab das "tr" übersehen. Wenn da ein "s" gestanden hätte, dann hätte der Parameter gefehlt, so funktioniert es natürlich auch. Aber "tr" findet auch keine regulären Ausdrücke, sondern nur einzelne Zeichen.
»»
»» bye, Frank!
Aber was bedeutet denn das tr oder das s!
Denn der Code war abgeschrieben,
und ich moechte verstehen was ich schreibe!!
m0b
Die folgende Nachricht zum Thema stammt von: Frank Schönmann, 29. 10. 1998, 16:15
hi!
»» »» Sorry, ich hab das "tr" übersehen. Wenn da ein "s" gestanden hätte, dann hätte der
»» »» Parameter gefehlt, so funktioniert es natürlich auch. Aber "tr" findet auch keine regulären
»» »» Ausdrücke, sondern nur einzelne Zeichen.
»» Aber was bedeutet denn das tr oder das s!
»» Denn der Code war abgeschrieben,
»» und ich moechte verstehen was ich schreibe!!
s/// kann nach regulären Ausdrücken suchen und diese ersetzen. tr/// such dagegen nur nach einzelnen Zeichen und ersetzt diese jeweils durch ein anderes.
bye, Frank!
© 1998-2008
Impressum, Software: Classic Forum