- Registriert
- 19.03.06
- Beiträge
- 1.975
Hallöchen...
Ich bastel mir gerade in PHP ein Script zusammen, dass aus übergebenen URLs die <title>-Informationen ausliest, und diese dann in eine Datenbank schreibt.
Nun habe ich dort allerdings ein recht nerviges Problem mit dem Charset. Meine Datenbank läuft auf latin1_german_cl. Meine Seite auf ISO-8859-15, das übergebe ich per meta-tag.
Die ausgabe der Titel erfolgt dann mit entsprechender Vorbehandlung durch htmlentities().
Nun habe ich da aber eine problematische Seite. Nämlich die Wikipedia. Die lässt ihren Schmonz nämlich auf UTF-8 laufen, was zur folge hat, dass bei mir anstelle des Bindestriches in deren title nur irgendein Sonderzeichenmüll rauskommt.
Was kann ich da tun? Meine Seite komplett auf UTF-8 umstellen, und dann mit den ISO-Formatierten seiten kämpfen? Den ganzen Kram irgendwie encodieren?
Zur Info: Mein algorithmus zum auslesen der titles sieht folgendermaßen aus:
Ich spiele hierbei auch schon mit dem Gedanken, bereits im return-Statement die htmlentities() einzusetzen, aber ich bin mir da nicht so sicher, mit welchem Encoding ich da meine Seite laufen lassen muss.
Gibt es hier vielleicht jemanden, der sich mit der ganzen Charset-Geschichte etwas auskennt, und mir da weiterhelfen kann? Wäre nett
Ich bastel mir gerade in PHP ein Script zusammen, dass aus übergebenen URLs die <title>-Informationen ausliest, und diese dann in eine Datenbank schreibt.
Nun habe ich dort allerdings ein recht nerviges Problem mit dem Charset. Meine Datenbank läuft auf latin1_german_cl. Meine Seite auf ISO-8859-15, das übergebe ich per meta-tag.
Die ausgabe der Titel erfolgt dann mit entsprechender Vorbehandlung durch htmlentities().
Nun habe ich da aber eine problematische Seite. Nämlich die Wikipedia. Die lässt ihren Schmonz nämlich auf UTF-8 laufen, was zur folge hat, dass bei mir anstelle des Bindestriches in deren title nur irgendein Sonderzeichenmüll rauskommt.
Was kann ich da tun? Meine Seite komplett auf UTF-8 umstellen, und dann mit den ISO-Formatierten seiten kämpfen? Den ganzen Kram irgendwie encodieren?
Zur Info: Mein algorithmus zum auslesen der titles sieht folgendermaßen aus:
Code:
function titlebyaddr($url)
{
//Returns the title of a given website
$data = implode("", file($url));
if (preg_match("/<title>(.*?)<\/title>/is", $data, $title))
{ $titelzeile = $title[1]; }
return $titelzeile;
}
Ich spiele hierbei auch schon mit dem Gedanken, bereits im return-Statement die htmlentities() einzusetzen, aber ich bin mir da nicht so sicher, mit welchem Encoding ich da meine Seite laufen lassen muss.
Gibt es hier vielleicht jemanden, der sich mit der ganzen Charset-Geschichte etwas auskennt, und mir da weiterhelfen kann? Wäre nett
