Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>HTML - PHP Sonderzeichen

HTML - PHP Sonderzeichen

apple4ever
apple4ever02.06.0616:04
ich habe ein problem, irgend wie macht php nur scheiße, wenn ich ihn sonderzeichen ersetzen lasse!

mein quelltext

for($i=0;$i<count($right);$i++) {
$right[$i] = htmlentities($right[$i]);
echo $right[$i]."-";
}

bei diesem quelltext macht er aus Pötter P&Atilde;&para;tter

ich verstehe das nicht!
0

Kommentare

apple4ever
apple4ever02.06.0619:16
weiß denn keiner was??:-((:-((:-((:-((:-((:-((
0
Stefan S.
Stefan S.02.06.0619:22
vielleicht vorher in html eine Textcodierung (ISO Latin1 o.ä.) festlegen?
0
apple4ever
apple4ever02.06.0619:24
ich glaube nicht das das etwas bringt!
0
stiffler
stiffler02.06.0620:13
Versuch's mal so:

$str=htmlentities($str, ENT_QUOTES, "ISO8859-15");
„To understand recursion you need to understand recursion“
0
apple4ever
apple4ever03.06.0600:16
@ psi habe ich schon vorher probiert, hat nicht geklappt
@ stiffler, geht auch nicht!
0
jonny91
jonny9103.06.0600:43
Was steht denn im generierten Quelltext? wandelt der das unter umständen 2mal um?!
aus ä wird &auml; und aus & wird &amp; und gesamt wird dann &amp;auml; raus!!!
„How much wood would a woodchuck chuck if a woodchuck could chuck wood?“
0
apple4ever
apple4ever03.06.0611:07
@ jonny91,da bin ich auch schon drauf gekommen, aber ich habe den quelltext doch oben reingeschrieben, und wie du sicher erkannen kannst, wird er nicht zwei mal generiert!

@psi, das sind namen, die aus einer txt datei mit file() ausgelesen werden
0
stiffler
stiffler03.06.0613:04
das sieht mir ganz danach aus, als wenn bereits in deinem Array Murks drin steht. Vermutlich wird mtn das filtern, aber in deinem Array steht nicht "Pötter", sondern "Pötter".

Du solltest, wie bereits gaspode schrieb, mal die Codepage kontrollieren und an der Stelle nachsehen, wo das Array beschrieben wird.
„To understand recursion you need to understand recursion“
0
stiffler
stiffler03.06.0613:04
poste doch mal den entspr. Schnipsel
„To understand recursion you need to understand recursion“
0
apple4ever
apple4ever03.06.0614:28
ist auch egal, dann mache ich es eben anders, trotzdem danke
ich wollte mich jetzt nicht ewig mit diesem thema rumschlagen
0
Rantanplan
Rantanplan03.06.0615:00
Die Strings in dem Array dürften in UTF8 kodiert sein. Kein Wunder wenn da Murks rauskommt. Aber wer nimmt heute noch Entities für Umlaute? Einfach charset auf UTF8 und fertig.
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
roger_toger03.06.0616:28
Rantanplan
Die Strings in dem Array dürften in UTF8 kodiert sein. Kein Wunder wenn da Murks rauskommt. Aber wer nimmt heute noch Entities für Umlaute? Einfach charset auf UTF8 und fertig.

Zur Vollständigkeit halber, Umlaute und Co. gehen auch ohne Entities im ISO Charset.
0
Rantanplan
Rantanplan03.06.0616:38
roger_toger

Richtig, aber wenn die Ausgangsdaten - und so sieht es ja aus - schon in UTF8 sind, dann nützt dir ein "charset=so-8859-1" auch nicht viel. Textkodierung und charset müssen übereinstimmen. Ist trivial, ich weiß, aber anscheinend nicht jedem geläufig

gaspode

wuff wuff
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
Rantanplan
Rantanplan03.06.0616:39
Mir ist ein i vor dem so verloren gegangen
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
PSI02.06.0619:57
Vielleicht hilft dir dies hier weiter:

PHP: Umlaute konvertieren
Geschrieben am Friday, 05.November.2004 @ 19:21:22 CET by dewi

Tipps und Tricks Gerade wenn man XML-Dateien wie z.B. RSS-Feeds dynamisch erzeugen will, müssen alle Umlaute konvertiert werden.
Hier wird eine simple Funktion vorgestellt, die dieses erledigt.

Diese Funktion erwartet als Argument den zu konvertierenden Text und liefert den konvertierten Text zurück.

function convertUmlaute($text){
//DIE UMLAUTE WERDEN KONVERTIERT /////
$pattern1="/ä/";
$replace1="&#228;";
$text=preg_replace($pattern1,$replace1, $text);
$pattern2="/ö/";
$replace2="&#246;";
$text=preg_replace($pattern2,$replace2, $text);
$pattern3="/ü/";
$replace3="&#252;";
$text=preg_replace($pattern3,$replace3, $text);
$pattern1a="/Ä/";
$replace1a="&#196;";
$text=preg_replace($pattern1a,$replace1a, $text);
$pattern2a="/Ö/";
$replace2a="&#214;";
$text=preg_replace($pattern2a,$replace2a, $text);
$pattern3a="/Ü/";
$replace3a="&#220;";
$text=preg_replace($pattern3a,$replace3a, $text);
$pattern4="/ß/";
$replace4="&#xDF;";
$text=preg_replace($pattern4,$replace4, $text);
return $text;
}
0
Gaspode02.06.0620:27
Wozu überhaupt Umlaute konvertieren, einfach die richtige Codepage im Webserver und HTML-Code verwenden und fertig.
0
PSI03.06.0600:52
Wie wird denn das Array $right generiert?
Ist $right zuvor ein String aus einer Textdatei oder wird
es mit xyz?func=... beim Aufruf des php-Skriptes angehängt?
0
Gaspode03.06.0616:19
Rantanplan Von Hund zu Hund, danke für die Zustimmung
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.