Kyrillischer Seiteninhalt filtern

holzmensch

Erfahrenes Mitglied
Hallo,

ich möchte beispielsweise von dieser Seite http://prian.ru/price/82466.html den Inhalt rausfiltern. Wenn ich aber den Inhalt mit file_get_contents() den Inhalt raushole, wenn werden die Buchstaben mit Sonderzeichen dargestellt.

PHP:
header('Content-Type: text/html; charset=utf-8', true);
$link     = "http://prian.ru/price/82466.html";
$content  = file_get_contents($link);
print $content;

Ob ich nun mit utf8_decode(), utf8_encode() oder einfachso den Inhalt darstellen will, bekomme ich Fragezeichen bzw. Sonderzeichen. Hoffe einer kann mir helfen das Problem zu löschen

holzmensch
 
Die von dir genannte Seite hat eine WINDOWS-1251 Codierung, utf8_decode() kann jedoch nur ISO-8859-1 verarbeiten.

Versuchs mal mit mb_convert_encoding. (Dazu muss PHP allerdings mit der mbstring-Erweiterung installiert sein.)
 
Die von dir genannte Seite hat eine WINDOWS-1251 Codierung, utf8_decode() kann jedoch nur ISO-8859-1 verarbeiten.

Versuchs mal mit mb_convert_encoding. (Dazu muss PHP allerdings mit der mbstring-Erweiterung installiert sein.)

Ok, damit wird der russchische Text normal angezeigt und nach dem Rausfiltern und print $text; wird er auch mit den normalen kyrillischen Zeichen angezeigt, auch im Quellcode ist nichts vom Unicode oä zusehen. Sogar in eine txt-Datei schreibt er das richtig.

Nur mit der Datenbank will es nciht richtig klappen... Die Codierung ist auf utf8_unicode_ci gestellt. Hoffe du kannst mir da weiterhelfen!

gruß
holzmensch

EDIT:

Жилое здание нахР<-- solche Sachen stehen dann dort.
 
Zuletzt bearbeitet:
Ja ist mir klar und da ist ja auch das Problem:

PHP:
preg_match_all( "/<li style=\"list-style: none;margin-left:20px;\">(.+)<\/li>/s", mb_convert_encoding($content, "UTF-8", "windows-1251" ), $text );

So hole ich den Text raus und schreibe ihn sofort in die DB. Dort stehen dann aber nur die Sonderzeichen... oO Beim einfach print der Treffer steht der Text ganz normal da. :rolleyes:

dmx
 
Kann es sein das wenn du auf die DB "zugreifst um die Daten anzeigen zulassen, die Seite nicht UTF-8 Kodiert ist?

Das gleiche Problem hatte ich vor 4 Monaten auf einen Server eines Kunden. Beim Ausgeben auf der seite war alles ok... nur beim betrachten in der DB nicht :D
 
Kann es sein das wenn du auf die DB "zugreifst um die Daten anzeigen zulassen, die Seite nicht UTF-8 Kodiert ist?

Das gleiche Problem hatte ich vor 4 Monaten auf einen Server eines Kunden. Beim Ausgeben auf der seite war alles ok... nur beim betrachten in der DB nicht :D

Ich hab gar nicht erst versucht den Spaß auszugeben, weil es ja schon in der DB falsch drinstand, funktioniert aber! :-) Danke! Saß wirklich mehr als 4 Stunden an dem Problem... *holzmensch*

hozmensch
 
Zurück