HTML - Kryptische Zeichen in der Beschreibung ? Deutsche Meta Daten ?

DualityMind

Lieutenant
Registriert
Dez. 2015
Beiträge
768
Hallo Cblers

Ich habe da ein Problem mit HTML und zwar zeigt es mir auf allen Seiten kryptische Zeichen an wie diese:

zu l�sen, in einem K�nigreich, ( wie bringe ich die weg ?)

Habe versucht mit META Tags wie diese hier zu lösen, aber funzt nicht :-(:

Code:
<html lang="de">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Dachte mit diesen META Tags sollte es gelöst sein, aber Pustkuchen :-))) !

Hat jemand Lösung dafür ?

LG
 
Mein Gerüst für HTML ist

HTML:
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>

</body>
</html>
 
DualityMind schrieb:
Dachte mit diesen META Tags sollte es gelöst sein, aber Pustkuchen :-))) !
Die Metadaten müssen auch zur Kodierung der Datei passen, sonst können die nicht helfen. Wenn da kryptische Zeichen auftauchen, dann ist die Datei nicht UTF-8 kodiert.

Also die html-Datei mit einem Editor (z.B. Notepad++) als UTF-8 speichern und die unpassenden Zeichen korrigieren ... alternativ könntest Du aber auch die zu Deinen Dateien passende Kodierung bestimmen und die in den Metadaten angeben. Allerdings würde ich die Lösung mit UTF-8 bevorzugen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: abcddcba
Hallo @Andreas

Das kann ich leider nicht machen, da allen Daten auf einer MySQL Datenbank gespeichert sind. Es sollte doch eine elegantere Lösung geben wie @Bagbag geschrieben hat.

Habe es versucht wie Bagbag schrieb, leider ohne Erfolg. Es hat nur die Schrift von light nach bold umgeschrieben.

Die META Daten habe ich versucht in der Header.html einzufügen und dann im Include von der Index, aber leider sind die kryptischen Zeichen immer noch da :-( !

Falls jemand Lösung hat, bitte immer Melden. Werde selbst noch per Google weitersuchen. Danke für alle Antworten bisher :-)!

LG
 
Die Daten müssen ja irgendwie aus der Datenbank ins HTML kommen. Da kann es schon sein, dass du vorher bspw in PHP etwas mit der Kodierung verhaust.
 
Ich empfehle dir jedoch, anstatt den Output an die Quellen anzupassen (was machst du denn, wenn du irgendwann noch wo anders Daten hernimmst und das ne andere Kodierung hat?), alle Quellen bevor sie weiter genutzt werden nach UTF-8/UTF-16 zu konvertieren (bei den meisten Programmiersprachen die ich kenne ist die Kodierung von Strings UTF-16). Außerdem ist eine Kodierung wie windows-1252 weniger kompatibel als UTF-8 (das praktisch überall unterstützt wird).
 
Hallo

Habe jetzt in der Datenbank geschaut und dort habe ich die Kodierung auf:

Hier ein Bild von der Datenbank:

767388


Dort wo steht "Kodierung" kann ich leider nicht ändern, da sonst die Tabelle "Descript" wieder futsch ist. Das hatte ich auch schon gemacht und musste alles Manuell wieder Eintragen.

Teste die Seite über "Xampp" per Localhost. Da wurde ja alles Automatisch eingerichtet, habe da auch keine Hand angelegt.

Ausserdem, steht auf der Hauptseite von MySQL, da kann man auch die Kodierung ändern, hat aber leider auch nichts gebracht. Habe auch versucht MySQL neu zu starten, aber immer das gleiche Bild :-( !

Die HTML und PHP Dateien habe ich per "UltraEdit" als "UTF-8 (ohne Bom)" abgespeichert, wie es per Google angezeigt wurde.

Das Descript will ich lieber nicht anfassen, sonst kann ich dann alles wieder Neu Schreiben. :-(!

Was soll ich nun am besten Tun ?

LG
Ergänzung ()

Hallo

Ich bins nochmals :-)) !

Habe jetzt auf meinen Host nachgeschaut und dort hat es keine kryptischen Zeichen.

Versucht habe ich nun, den gleichen Zeichensatz wie auf dem Hosting Einzustellen, doch die kryptischen Zeichen wollen einfach nicht verschwinden :-)!

Bei Descript ist auch der gleiche Zeichensatz eingestellt wie auf dem Hosting. Kann es sein, dass beim Backup vom Host nach Xampp irgendetwas falsch geschrieben wurde ?

Werde immer noch weitersuchen, irgendwo wird der Wurm drin stecken :-)!

LG
 
Zuletzt bearbeitet:
Wie stehen die Daten in MySQL? Wenn die da korrupt drinstehen, kannst Du umstellen wie Du willst. Das ändert nichts mehr ;)
 
Hoi @Smurfy1982

Habe nachgeschaut, z.B. das "Ü" ist in der Datenbank glücklicherweise als "ü" abgespeichert.

Anzeigt wird das Ü aber als "s�ssen" !

Habe vorher gegoogelt und alle .php Dateien und .htm Dateien als "UTF-8 (ohne Bom) abgespeichert inkl. allen Include Dateien und habe alle Formatierungen gelöscht in .php und .htm, welche irgendwie auf z.B. ISO abzweigen. Leider hat nix gefunzt und weiss jetzt nicht mehr weiter. Bin am Ende :-)) !

Gibt es weitere Vorschläge, was ich am besten tun sollte ?

LG
Ergänzung ()

Hallo Alle Helfer

Habe jetzt die Lösung gefunden. Habe laut Google die my.ini Datei bearbeitet und

Code:
## UTF 8 Settings
#init-connect=\'SET NAMES utf8\'
#collation_server=utf8_unicode_ci
#character_set_server=utf8
#skip-character-set-client-handshake
#character_sets-dir="C:/xampp/mysql/share/charsets"

die "#" gelöscht, damit es verwendet wird. Und dann MySQL Neu gestartet und hurraaaa die kryptomanischen Zeichen waren weg.

Danke für Eure Geduld. Herzlichen Dank für die Hilfe. :-))))) !

Muss bis Ende März 2019 alles auf PDO umstellen und muss noch einiges machen :-)!

LG
 
Zuletzt bearbeitet:
Dann vergiss nicht gleich bei der Initialisierung des PDO die Zeichenkodierung der Datenbankschicht ebenfalls auf UTF8 festzulegen, sonst passieren eventuell wieder unvorhergesehene Dinge:

PHP:
$pdo = new PDO(
    'mysql:host=host;dbname=database',
    'benutzer',
    'passwort',
    [PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"]
);
 
Zurück
Oben