Gaestebuch
Jan
0 Stefan Muenz0 Calocybe
Hallo,
ich bin immer noch beim Modifizieren von Matt Wright's Gaestebuch (http://www.worldwidemart.com/scripts/). Um deutsche Umlaute in gewissen Passagen in HTML-Umlaute umzuwandeln, habe ich folgendes in das Script eingefuegt:
$htmlname = $FORM{'realname'};
&Replace_Name;
$htmlstadt = $FORM{'city'};
&Replace_Stadt;
$htmlkommentar = $FORM{'comments'};
&Replace_Kommentar;
sub Replace_Name
{
$htmlname =~ s/ä/ä/g;
$htmlname =~ s/Ä/Ä/g;
$htmlname =~ s/ö/ö/g;
$htmlname =~ s/Ö/Ö/g;
$htmlname =~ s/ß/ß/g;
$htmlname =~ s/ü/ü/g;
$htmlname =~ s/Ü/Ü/g;
}
sub Replace_Stadt
{
$htmlstadt =~ s/ä/ä/g;
$htmlstadt =~ s/Ä/Ä/g;
$htmlstadt =~ s/ö/ö/g;
$htmlstadt =~ s/Ö/Ö/g;
$htmlstadt =~ s/ß/ß/g;
$htmlstadt =~ s/ü/ü/g;
$htmlstadt =~ s/Ü/Ü/g;
}
sub Replace_Kommentar
{
$htmlkommentar =~ s/ä/ä/g;
$htmlkommentar =~ s/Ä/Ä/g;
$htmlkommentar =~ s/ö/ö/g;
$htmlkommentar =~ s/Ö/Ö/g;
$htmlkommentar =~ s/ß/ß/g;
$htmlkommentar =~ s/ü/ü/g;
$htmlkommentar =~ s/Ü/Ü/g;
}
Hat jemand eine Idee, wie ich das alles (da es sich ja wiederholt) zusammenfassen kann?
Es sollte sich allerdings nicht auf das gesamte Script beziehen, da das Script Mails versenden kann (und dies auch tun soll).
Dabei würden HTML-Umlaute natuerlich stoeren...
Jan
Hallo Jan
Hat jemand eine Idee, wie ich das alles (da es sich ja wiederholt) zusammenfassen kann?
sub replace_umls
{
$Returnstring = $_[0];
$Returnstring =~ s/ä/&\auml;/g;
$Returnstring =~ s/Ä/&\Auml;;/g;
$Returnstring =~ s/ö/&\ouml;;/g;
$Returnstring =~ s/Ö/&\Ouml;/g;
$Returnstring =~ s/ß/&\szlig;/g;
$Returnstring =~ s/ü/&\uuml;/g;
$Returnstring =~ s/Ü/&\Uuml;/g;
return $Returnstring;
}
Und Aufruf (Beispiel):
$htmlkommentar = &replace_umls($htmlkommentar);
oder:
$htmlstadt = &replace_umls($htmlstadt);
viele Gruesse
Stefan Muenz
PS: Kannst die \ hinter den & auch weglassen, ich hab die nur eingebaut, damit das Forumsscript sie nicht umwandelt. Muss ich mich auch mal drum kuemmern...
Hallo Stefan!
PS: Kannst die \ hinter den & auch weglassen, ich hab die nur eingebaut, damit das Forumsscript sie nicht umwandelt. Muss ich mich auch mal drum kuemmern...
Ja, es ist ein bisschen verwirrend, dass einerseits HTML-Tags maskiert werden und demnach lesbar erscheinen, HTML-Characters dagegen 1:1 uebernommen und dann vom Browser interpretiert werden. Ausser in der Subjectangabe, da werden die Chars dann doch wieder ausmaskiert. Wenn man's aber erstmal weiss, kann man schoene Spielereien machen, wie zum Beipiel die Forums-Syntax fuer einen Link erlaeutern:
[link:http://www.domain.com/directory/]
Einfach indem man statt [ am Anfang ein [ schreibt.
Meist waere es aber doch besser, wenn die Chars maskiert werden wuerden. Immer lustig zu lesen: "Statt ein schreiben." (wobei das zweite Leerzeichen eigentlich werden sollte.)
Calocybe