php.de

Zurück   php.de > Webentwicklung > HTML, Usability und Barrierefreiheit

HTML, Usability und Barrierefreiheit Themen rund um Textauszeichnung, Formatierung, Barrierefreiheit und Usability.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.06.2010, 00:27  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard Verschiedene Kodierung innerhalb der selben Seite

Hallo Community,

ich stehe momentan vor einem doch sehr verwunderlichen Problem, von dem ich niemals erwartet hätte, es könnte vor mir auftauchen.


Es geht um folgendes Problem:
Die Ausgabe/Rückgabe eines Services der auf einer Website verwendet wird ist zwingend utf-8 und enthält entsprechend auch Zeichen des kompletten UTF-8 Zeichensatzes. Die Website, die diesen Service anzeigt ist kompromisslos in iso-8895-1 kodiert.

Eine einfache dekodierung von utf-8 zu unicode und dann zu iso-8895-1 kommt nicht in Frage, da entsprechende Sonderzeichen durch die neue Kodierung nicht mehr dargestellt werden können.

Da der Webmaster der Seite nicht willens ist, die Seite auf utf-8 umzustellen (was ich bei der Größe der Website nachvollziehen kann), habe ich nun folgende Frage.

Gibt es eine Möglichkeit, einen Teil einer Website anders kodiert auszuliefern als den Rest? (Ich meine keine Unterseite sondern verschiedene Bereiche der gleichen Seite)

Also in etwa so:
Code:
+-------------------------------------+
|  iso-8895-1                         |
|                                     |
|                                     |
|                     +--------+      |
|                     | utf-8  |      |
|                     +--------+      |
+-------------------------------------+
Nachtrag: Iframes scheiden natürlich aus.
__________________
Frank ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.06.2010, 00:58  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Kann ich mir nicht vorstellen. Ein Dokument hat eine Kodierung. Ich wüsste nicht wie man da verschiedene Kodierungen hinbekommen sollte! Gerade wenn wenn du iFrames ausschließt sehe ich da keine Möglichkeit.
Flor1an ist offline   Mit Zitat antworten
Alt 25.06.2010, 01:19  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.725
PHP-Kenntnisse:
Fortgeschritten
mermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz sein
Standard

Zitat:
Zitat von Frank
Eine einfache dekodierung von utf-8 zu unicode und dann zu iso-8895-1 kommt nicht in Frage, da entsprechende Sonderzeichen durch die neue Kodierung nicht mehr dargestellt werden können.
Wie wäre es mit Umkodieren und HTML-Entities?

PHP: htmlentities - Manual
__________________
Blog | Buch | Kaloa
mermshaus ist offline   Mit Zitat antworten
Alt 25.06.2010, 18:21  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

IMHO geht das nicht.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 26.06.2010, 03:05  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.725
PHP-Kenntnisse:
Fortgeschritten
mermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz sein
Standard

PHP-Code:
<?php

// http://www.php.net/manual/en/function.htmlentities.php#96648
//
// When using UTF-8 as a charset, htmlentities will only convert 1-byte and
// 2-byte characters. Use this function if you also want to convert 3-byte and
// 4-byte characters
//
// converts a UTF8-string into HTML entities
//  - $utf8:        the UTF8-string to convert
//  - $encodeTags:  booloean. TRUE will convert "<" to "&lt;"
//  - return:       returns the converted HTML-string
function utf8tohtml($utf8$encodeTags) {
    
$result '';
    for (
$i 0$i strlen($utf8); $i++) {
        
$char $utf8[$i];
        
$ascii ord($char);
        if (
$ascii 128) {
            
// one-byte character
            
$result .= ($encodeTags) ? htmlentities($char) : $char;
        } else if (
$ascii 192) {
            
// non-utf8 character or not a start byte
        
} else if ($ascii 224) {
            
// two-byte character
            
$result .= htmlentities(substr($utf8$i2), ENT_QUOTES'UTF-8');
            
$i++;
        } else if (
$ascii 240) {
            
// three-byte character
            
$ascii1 ord($utf8[$i+1]);
            
$ascii2 ord($utf8[$i+2]);
            
$unicode = (15 $ascii) * 4096 +
                       (
63 $ascii1) * 64 +
                       (
63 $ascii2);
            
$result .= "&#$unicode;";
            
$i += 2;
        } else if (
$ascii 248) {
            
// four-byte character
            
$ascii1 ord($utf8[$i+1]);
            
$ascii2 ord($utf8[$i+2]);
            
$ascii3 ord($utf8[$i+3]);
            
$unicode = (15 $ascii) * 262144 +
                       (
63 $ascii1) * 4096 +
                       (
63 $ascii2) * 64 +
                       (
63 $ascii3);
            
$result .= "&#$unicode;";
            
$i += 3;
        }
    }
    return 
$result;
}

header('Content-Type: text/plain; charset=ISO-8859-1');

$utf8Chars "\xC3\x84 \xC3\x96 \xC3\x9C \xC3\x9F \xE2\x82\xAC \xE5\x94\x90";

echo 
htmlentities($utf8Charsnull'utf-8'), "\n";
echo 
utf8tohtml($utf8Charstrue);
Die Aussage, dass htmlentities nur mit 1- und 2-Byte-UTF8-Characters funktioniert, stimmt so allerdings nicht. Das Euro-Zeichen geht auch durch. Ich habe nicht weiter nachgeforscht.
__________________
Blog | Buch | Kaloa
mermshaus ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bei richtiger Eingabe Daten an nächste Seite versenden xx_heidi_xx PHP Tipps 2008 49 27.05.2008 14:56
Eintrag in DB und Wechsel zu anderer Seite Darson PHP Tipps 2008 25 14.01.2008 16:46
Ergebnis in der selben Seite öffnen? danimauserl2 PHP Tipps 2006 3 27.04.2006 19:58
Sprung zu einer Seite / innerhalb des Scriptes PHP Tipps 2006 3 01.03.2006 11:16
Excel Sheet innerhalb einer HTML Seite anzeigen PHP Tipps 2005-2 4 20.09.2005 13:32
mit JavaScript Seite im selben Frame öffnen saibot HTML, Usability und Barrierefreiheit 2 08.08.2005 15:46
position:fixed; und Links innerhalb der Seite TheIfrit HTML, Usability und Barrierefreiheit 0 14.07.2005 13:51
Welche seite (Adresse) rief die aktuelle seite auf? PHP Tipps 2005-2 7 05.07.2005 15:02
include innerhalb einer seite rückgängig machen PHP Tipps 2005 2 27.03.2005 20:26
Seite in Seite PHP-Fortgeschrittene 3 15.03.2005 19:27
Mit post an weitere Seite oder 2 Seiten übergeben? PHP Tipps 2005 1 02.02.2005 12:16
Elemente "springen" innerhalb einer Seite HTML, Usability und Barrierefreiheit 14 23.12.2004 14:19
Auf einer seite verschiedene DB Abfragen, wie?! medico PHP Tipps 2004 5 30.07.2004 23:02
Seite nicht mit content="3600" im Cache gespeicher scheibo PHP Tipps 2004 0 19.07.2004 14:49
[Erledigt] PHP Eine neue PHP seite automatisch öffnen PHP Tipps 2004 1 19.06.2004 12:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
verschiedene kodierung innerhalb der selben seite, verschiedene codierung innerhalb derselben seite, verschiedene codierung, \\xc3 php, iframe utf8, html unterschiedliche sprachen auf derselben website, php kodierung, verschieden zeichensätze auf derselben seite, unterschiedliche codierung php, php unterschiedliche character, php remove invalid characters from filename, html zeichenkodierung zwei verschiedene, verschiedene textcodierung, php xe2 xc3 zeichencode, ptri2caw6ez4zckvhjhifdregkphp270ez5dcs8yn5bjxngwshzlkhpjn uhchoa8pxd99sqhkivmvsr6buw1bde27lc5og4uwkufdlx jmjwn4egsx/aqlb1iei1rkwdr6za1/czum034pqija8bcpfn1crr6giap47ji0pitbyhffnloqzwbnjax1m2csr, html unterschiedliche codierung, verschiefene cofierung, php &#xc3;, php \\\xc3\ character, html unterschiedliche codierung auf einer seite

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:53 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum