php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.07.2010, 16:26  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard [Erledigt] Webapplikation für Osteuropa fit machen

Hi

habe eine Anwendung laufen mit meta charset iso-8859-1 und in MySQL im Wesentlichen latin1_general_ci. Das ganze lief bisher nur in Deutschland, Österreich, Frankreich, soll jetzt aber auch in Tschechien, Slowakei, Ungarn, Polen und Russland für einen anderen Kunden laufen.

Also habe ich kurzerhand die DB, Tabellen, Tabellenfelder auf utf8_general_ci umgestellt und damit begonnen, die wenigen im Auslieferungszustand enthaltenen Datenbankeinträge neu einzugeben.

Ferner habe ich html-seitig auf meta charset UTF-8 umgestellt und die Datenbankverbindung mit
PHP-Code:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'"); 
noch angepaßt.

Im Ergebnis läuft das alles erst mal ganz gut. Dennoch beschleichen mich einige Fragestellungen:

1. Ein ausgelesener Datenbankeintrag "Rüdé" wird nur dann richtig auf der
Website dargestellt, wenn ich
PHP-Code:
function to_html_entities_utf8 ($word) {
    return 
htmlentities($word,ENT_QUOTES,'UTF-8');

auf den Output anwende. Eigentlich hatte ich gedacht, dass HTML-Entitäten der Darstellung wegen nicht zwingend notwendig sind. Wieso ist das hier erforderlich?

2. FPDF scheint per se kein UTF-8 zu unterstützen. Hat da mal jemand einen Hinweis, was ich alternativ nehmen oder machen sollte? D. h. was ist Eure Empfehlung?

3. Aktuell sagt mein Stylesheet z. B.
Code:
font-family:Arial, Helvetica;
Muß ich für die Osteuropäer andere Schriftarten nehmen? Wenn ja, wie löse ich das generell. Stylesheets dynamisch einbinden, nur noch Arial Unicode (?) oder ähnliches?

Ein netter Nebenbefund: Die oben genannten Sprachen sind sprachcodierungsmäßig der ISO-639 zugeordnet, der im übrigen - völlig
erwartungsgemäß - auch Klingonisch zugeordnet ist (siehe Wikipedia).

Wäre nett, wenn Ihr ganz oder teilweise Ideen und Anregungen habt.

Gruß
drsoong ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 16.07.2010, 16:37  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von drsoong Beitrag anzeigen
Eigentlich hatte ich gedacht, dass HTML-Entitäten der Darstellung wegen nicht zwingend notwendig sind. Wieso ist das hier erforderlich?
Vermutlich, weil dein Dokument immer noch nicht als UTF-8 interpretiert wird.


Dass eine charset-Angabe per META-Element niedrigere Priorität hat, als eine per HTTP gemachte, ist Grundlagenwissen in Bezug auf Zeichenkodierung im Web.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline  
Alt 16.07.2010, 17:56  
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

Zitat:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
Bitte auch nicht beide verwenden. Näheres findest DU im Adventskalender.
__________________
--
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  
Alt 20.07.2010, 10:59  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Zitat:
Zitat von ChrisB Beitrag anzeigen
Vermutlich, weil dein Dokument immer noch nicht als UTF-8 interpretiert wird.


Dass eine charset-Angabe per META-Element niedrigere Priorität hat, als eine per HTTP gemachte, ist Grundlagenwissen in Bezug auf Zeichenkodierung im Web.
O.K. danke erst Mal für Eure Hinweise.

Ich hatte übersehen, dass meine IDE php-Dateien standardmäßig in ANSI speichert. Nach entsprechender Anpassung sind gleich einige "Oddities" vom Bildschirm verschwunden.

Den Adventskalendereintrag habe ich gelesen. Danke für den hiflreichen Hinweis.

ChrisB: Ich programmiere jetzt seit sechs Jahren kommerziell. Habe es mir selber beigebracht. 70% meines Wissens erwächst aus den jeweiligen Projektanforderungen. Den Rest versuche ich mir so anzulesen. Ich finde es manchmal etwas ernüchternd, wenn man dann immer noch auf Basics stößt, von deren Existenz man noch nicht einmal wußte. Umgekehrt weiß ich, dass meine Kunden sehr zufrieden sind, mich gerne weiter beschäftigen und ich den Job durchaus ernst nehme. So kann ich damit leben, dass die Priorisierung zwischen http und meta erst jetzt auf den Lehrplan kommt.
drsoong ist offline  
Alt 20.07.2010, 11:05  
Erfahrener Benutzer
 
Registriert seit: 13.05.2009
Beiträge: 1.164
PHP-Kenntnisse:
Fortgeschritten
dennis81 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Bitte auch nicht beide verwenden. Näheres findest DU im Adventskalender.
Mal ne kleine Offtopic Frage: Warum schreibst DU, DU immer groß?
__________________
Es ist schon alles gesagt! Nur noch nicht von allen! (Karl Valentin)
Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)
dennis81 ist offline  
Alt 20.07.2010, 11:13  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von dennis81 Beitrag anzeigen
Mal ne kleine Offtopic Frage: Warum schreibst DU, DU immer groß?
http://www.php.de/html-usability-und...tml#post520996

Wollen wir es ihm mal glauben
Asipak ist offline  
Alt 04.08.2010, 22:31  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Vielleicht interessiert das ja noch jemand anderen. Habe inzwischen alle Probleme / Fragen gelöst / beantworten können.

Zitat:
Eigentlich hatte ich gedacht, dass HTML-Entitäten der Darstellung wegen nicht zwingend notwendig sind. Wieso ist das hier erforderlich?
Habe übersehen, die PHP-Datei selber noch in UTF-8 zu speichern. Habe das nachgeholt und jetzt sind auch keine HTML-Entities mehr nötig.
Zitat:
2. FPDF scheint per se kein UTF-8 zu unterstützen. Hat da mal jemand einen Hinweis, was ich alternativ nehmen oder machen sollte? D. h. was ist Eure Empfehlung?
Nach aufmerksamen Studium eines FPDF-Tutorials und Duchforsten des FPDF-Forums habe ich es so gemacht: a) mir eine eigene FPDF-Schriftdatei z.B. für Russisch erstellt.
b) Diese Schriftdateien werden per
PHP-Code:
$pdf->addFont 
hinzugefügt bzw. eingebettet
c) Das PDF wird dann per fpdi mit Vorlagen und per DB mit UTF-8-Input befüllt, der per
PHP-Code:
iconv('UTF-8','iso-8859-5',$ausdruck
passend gemacht wird.
Zitat:
3...Muß ich für die Osteuropäer andere Schriftarten nehmen?
Hat sich mit der Lösung von 2 erledigt.
drsoong ist offline  
Alt 04.08.2010, 22:37  
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

[OT]

Zitat:
php.de - das Deutsche PHP-Forum

Wollen wir es ihm mal glauben
Was Du so alles auf dem Schirm hast. Ist ja gruselig! Wusste nicht mal selbst, dass ich das mal geschrieben habe!

Also - wie gesagt - ist ein Tippfehler, der wohl irgendwie mit meiner Art der Tastaturbedienung zu tun hat. Versuche es i.A. zu korrigieren, aber manchmal übersehe ich das.
__________________
--
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  
Alt 04.08.2010, 23:47  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Hey nikosch, scheinst wohl schon wieder Probleme mit der Tastatur zu haben. Deine Antwort ist doch sicher nicht für diesen Thread bestimmt???!!!
drsoong ist offline  
Alt 05.08.2010, 00:19  
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

Doch, doch:
Zitat:
Mal ne kleine Offtopic Frage: Warum schreibst DU, DU immer groß?
__________________
--
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  
 


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
Excel-Tabelle -> Webapplikation hExapod4 Datenbanken 2 05.01.2009 14:42

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
charset osteuropa, charset slovakei, fpdf slovakisch uf8, fpdi ungarisch, fpdf russisch, slowakei characterset, fpdf error: alpha channel not supported, perl html::entities utf8, zeichenkodierung poland, php osteuropa, fpdf russische schrift helvetica, character set slowakei, charset ungarn, fpdf und russisch, php mysql osteuropäisch, slowakei charset, charset osteuropäische sprachen, php zeichencodierung polen, charset iso osteuropa, mysql osteuropäisch

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:09 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