Flashhilfe.de - Flash Community

Suche PHP: Feed umwandeln ISO-1.. zu UTF-8

 


AntwortenRegistrieren Seite1  

gothiatek#1
Benutzerbild von gothiatek
Beiträge: 33
Wohnort: Hamburg
Registriert: Dec 2006

13.02.2008, 17:35

Hallo,

ich lade via PHP ein RSS Feed, der scheinbar in ISO-8859-1 codiert ist. Aufjedenfall ist die XML Deklaration auf ISO-8859-1 gesetzt und Flash frißt die Umalute etc nicht. Ich möchte also den Feed durch eine PHP laden und sowohl und umcodieren. Geht das so einfach?

Ich habe es schon geschafft den Feed zu laden und auszugeben durch die PHP. Aber eine Umwandlung gelingt mir mit meinen begrenzten PHP Kenntnissen nicht. Meine Versuche den String, der den Feed enthält einfach durch utf8_encode() zu jagen und dann per echo auszugeben, haben nicht funktioniert.

Meine Idee ist eigentlich:
1. Flash ruft PHP auf
2. PHP läd XML Feed
3. PHP codiert den Feed in utf_8
4. PHP ersetzt die XML Deklaration (iso-1 zu utf-8)
5. PHP gibt den feed via echo() einfach aus
6. Flash erhält utf-8 codierten feed

Hat jemand da was parat? Ein Link, ein Script, eine Hilfestellung?

Vielen Dank!

im enchanted by your smile.
CIX88#2
Benutzerbild von CIX88
Beiträge: 261
Registriert: Feb 2005

14.02.2008, 18:27

Vielleicht im Flash ganz an den Anfang mal System.useCodepage=true; setzen ...

[http://www.cix88.de] [http://www.regex-tester.de]
gothiatek#3
Benutzerbild von gothiatek
Beiträge: 33
Wohnort: Hamburg
Registriert: Dec 2006

Themenautor/in

15.02.2008, 08:47

Ich suche weiterhin ein PHP Script :-(

im enchanted by your smile.
Sebastian#4
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

15.02.2008, 10:06

Wie sieht den das RSS Feed aus? Steht dort im Header vielleicht noch die Angabe iso-8859-1 ?

Wie sieht das PHP Script aus?

Grüsse,
Sebastian
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
gothiatek#5
Benutzerbild von gothiatek
Beiträge: 33
Wohnort: Hamburg
Registriert: Dec 2006

Themenautor/in

15.02.2008, 12:56

Der Feed nicht utf-8 codiert UND iso-8859-1 ist deklariert. Das kann ich auch nicht ändern.

Das PHP Script sieht momentan so aus:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
$curl_handle
=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'mein-iso-feed.xml');
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl_handle,CURLOPT_HTTPHEADER,array("Accept-Language: en-us,en;q=0.5"));
$curlxml curl_exec($curl_handle);
curl_close($curl_handle);
if(
utf8_encode(curlxml)) {
       
$curlxml preg_replace('/ISO-8859-1/','UTF-8',$curlxml);
        echo (
$curlxml);
    }
?>


Ich kann mir auch gut vorstellen, dass der Header iso-8859-1 liefert, wie müsste ich das anpassen?

im enchanted by your smile.
CIX88#6
Benutzerbild von CIX88
Beiträge: 261
Registriert: Feb 2005

15.02.2008, 19:36

> Ich suche weiterhin ein PHP Script :-(

Hmmm, es ist mir etwas Schleierhaft warum Umlaute immer mit UTF-8 in Verbindung gebracht werden. Du musst nicht extra ein PHP-Script zusätzlich einbinden, nur weil die Umlaute nicht gehen.

Beispiel vom Feed der AUCH in ISO-8859-1 ist:
http://www.mediacix.de/blog/feed

Und so sieht es im Flash aus:
http://www.mediacix.de/blog/Flash-RSS-FeedReader-217-2008.html

Also bei mir werden keine Umlaute falsch dargestellt.

[http://www.cix88.de] [http://www.regex-tester.de]
Sebastian#7
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

15.02.2008, 20:08

Jedenfalls solltest Du Dir noch einmal utf8_encode anschauen:
http://de3.php.net/utf8_encode

Grüsse,
Sebastian
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
gothiatek#8
Benutzerbild von gothiatek
Beiträge: 33
Wohnort: Hamburg
Registriert: Dec 2006

Themenautor/in

16.02.2008, 04:06

Unter welchem Stichwort? Falshe Syntax ? Was meinst du?

Gruß,
gothiatek

im enchanted by your smile.
Sebastian#9
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

16.02.2008, 13:51

utf8_encode bearbeitet keine Referenz, sondern hat ein return Wert.

Grüsse,
Sebastian
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
gothiatek#10
Benutzerbild von gothiatek
Beiträge: 33
Wohnort: Hamburg
Registriert: Dec 2006

Themenautor/in

16.02.2008, 19:31

Okay, vielen Dank. Es scheint tatsächlich so zu klappen. Wahrscheinlich für die PHP-Kenner kein Wunder, aber für mich ist PHP immer eine unkalkulierbare Angelegenheit. Anbei das Mini Script was ich nun verwende um einen externen Feed in UTF-8 umzuwandeln und ihn dann in Flash einlese:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
// get feed
$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'feed.xml');
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
$meinxml curl_exec($curl_handle);
curl_close($curl_handle);

//set utf-8
$meinxml utf8_encode($meinxml );
$meinxml preg_replace('/ISO-8859-1/','UTF-8',$meinxml );

// echo feed
echo ($meinxml );
?>


Es gibt bestimmt unendlich viele Szenarien wo das nun nicht funktioniert usw. Aber für meinen Zweck tut es das gerade und damit bin ich sehr glücklich :-)

Danke euch!

im enchanted by your smile.
im enchanted by your smile.
Geändert von gothiatek am 16.02.08 um 19:32 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2020 Sebastian Wichmann - Flashhilfe.de