| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

25-04-2009, 15:14
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
Umlaute in MySQL
Hallo zusammen..
Seit ca 3 Tagen käpfe ich mich nun mit dem Problem herum, dass die Umlaute meines Kommentarformular nicht richtig in die Datenbank eingetragen und ausgegeben werden.
MySQL Zeichensatz: utf8
MHTML Meta charset:
Code:
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
Wenn ich öäü eingebe, steht bei der Ausgabe auch öäü. Sobald aber einer meiner User Umlaute schreibt kommt ca. folgendes als Ausgabe: öäü
Der Text wird folgendermassen in die Datenbank eingetragen:
PHP-Code:
'text' => htmlentities($text)
Auch schon Probiert habe ich:
PHP-Code:
function sonderzeichen($input) {
$s = array('Ä', 'ä', 'Ü', 'ü', 'Ö', 'ö', 'ß');
$e = array('Ä', 'ä', 'Ü', 'ü', 'Ö', 'ö', 'ss');
return str_replace($s, $e, $input);
}
'text' => sonderzeichen($text)
Wenn ich in der Datenbank schaue, ist die gleich wie die Ausgabe. Es muss also an der eingabe liegen. Komisch finde ich, dass nur bei mir die richtige Eintragung erfolgt.
Hoffe jemand kann helfen. LG Andy
|

25-04-2009, 15:20
|
|
asp2php
Banned
|
|
Registriert seit: Feb 2004
Beiträge: 11.746
|
|
Das Problem wurde mehrmals hier besprochen, bitte die Forensuche anwenden; SET NAMES könnte dir helfen.
|

25-04-2009, 15:37
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
SET NAMES utf8 habe ich bereits ausgeführt. Natürlich habe ich die 3 Tage auch verbracht nach lösungen zu suchen, unter anderem in diesem Forum.
Das Komische daran ist, wenn ich im meta tag das charset von ISO-8859-1 auf utf8 einstelle gehts. Dafür werden alle anderen öäü's auf der Seite als Vierecke dargestellt.
|

25-04-2009, 15:43
|
|
combie
PHP Expert
|
|
Registriert seit: May 2006
Beiträge: 2.925
|
|
Zitat:
|
SET NAMES utf8 habe ich bereits ausgeführt.
|
Warum stellst du auf utf8, wenn du doch iso-blabla ausgeben willst?
 Allzu logisch ist das nicht.
|

25-04-2009, 15:59
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Original geschrieben von andygyr
Das Komische daran ist, wenn ich im meta tag das charset von ISO-8859-1 auf utf8 einstelle gehts. Dafür werden alle anderen öäü's auf der Seite als Vierecke dargestellt.
|
Du solltest logisch vorgehen - erst überlegen, welche Kodierung du verwenden willst, und dann schauen, welche Einstellungen du dafür an welchen Stellen vornehmen musst.
Derzeit machst du es ja offenbar andersherum - nicht vorher überlegt, und jetzt am herumspielen & hoffen, dass es dann irgendwann "passt".
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

25-04-2009, 15:59
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
Ja.. aber SET NAMES latin1 bringt den gleichen Fehler wie zuvor..
|

25-04-2009, 16:01
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Du musst das natürlich mit neuen Eingaben testen, nachdem du die Angabe gemacht hast - denn die alten sind u.U. schon zerstört, weil MySQL automatisch umkodiert hat.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

25-04-2009, 16:13
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
Ja logisch. Hab ich auch und es wird immer noch so dargestellt: äüöüüüü
Hier mal meine Einstellungen:
Zeichensatzt der Tabelle: latin1
Sortierung: latin1_swedish_ci
SET NAMES latin1;
Meta: content="text/html; charset=ISO-8859-1"
Eintragung: htmlentities($text)
|

25-04-2009, 16:20
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Was hat das htmlentities da zu suchen? Und welche Codierung wird da angegeben?
|

25-04-2009, 16:26
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
Auch ohne htmlentities gibts das gleiche Problem. Damit wollte ich erreichen das die Sonderzeichne in HTML umgewandelt werden. (Hab ich irgendwo gelesen)
Welche Codierung meinst du?
Geändert von andygyr (25-04-2009 um 16:28 Uhr)
|

25-04-2009, 16:55
|
|
h3ll
Registrierter Benutzer
|
|
Registriert seit: Mar 2008
Beiträge: 2.328
|
|
Was sagt der W3C-Validator, wenn du ihm per Link die URL zur Seite gibst?
|

25-04-2009, 17:22
|
|
andygyr
Registrierter Benutzer
|
|
Registriert seit: Jan 2007
Beiträge: 177
|
|
Zeigt mir nur meine 16 HTML Fehler..
|

25-04-2009, 17:47
|
|
kuddeldaddeldu
Registrierter Benutzer
|
|
Registriert seit: Sep 2006
Beiträge: 437
|
|
Hi,
lieferst Du die Seite denn auch mit dem entsprechenden Content-Type Header aus (nein, ich meine nicht das meta-Tag, sondern den Response-Header)?
LG
|

25-04-2009, 18:01
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Poste doch mal den Link.
|

25-04-2009, 18:20
|
|
Peacie
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 341
|
|
vergesst es :d mal wieder zu schnell gepostet ^^
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|