[GastForen Programmierung/Entwicklung PHP und MySQL Umlaute werden falsch ausgegeben, je nach Hoster

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Umlaute werden falsch ausgegeben, je nach Hoster

macmac
Beiträge gesamt: 394

13. Jul 2017, 07:32
Beitrag # 1 von 3
Bewertung:
(10788 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen

das Thema ist ein Renner – und weil es dazu so viel zu lesen gibt und ich nach einer Woche immer noch nicht am Ziel bin, frage ich nun hier, um endlich eine Lösung zu finden.

Ich habe eine Datenbank mit Inhalt auf einem Hoster A eingerichtet - Einträge und Ausgabe klappen ohne Probleme. Alles, auf utf-8 eingestellt, von der Eingabe bis zur Ausgabe.

Exakt die gleiche Datenbank-Einstellungen und die gleiche Tabelle, die gleichen Files zur Ausgabe auf dem Hoster B geben mir das schwarze Quadrat mit dem Fragezeichen aus. ABER: Mache ich dort Einträge, werden sie fehlerhaft in die Datenbank geschrieben (Fragezeichen auf dem Kopf statt ä usw.), jedoch bei der Ausgabe wieder richtig dargestellt. Ich könnte damit leben, wenn die Zeichen in der DB falsch sind, jedoch bei der Ausgabe wieder richtig. Aber das kann es nicht sein. Ich kann natürlich den ganzen Inhalt neu bei Hoster B eingeben – aber auch das ist doch nicht die Lösung.

Wo also liegt der Einstellungsehler bei Hoster B? Ich verbinge Stunden damit, alles zu vergleichen - ich komm nicht zum Ziel.

So habe ich versucht diese mögliche Lösung mysqli_query("SET NAMES 'utf8'"); einzubauen, aber Wo muss ich das in der Ausgabe einbauen??? Ich habe ja bereits $ausgabe = mysqli_query($db, $abfrage);.

Wer weiss eine Antwort?

Gruss Macmac
X

Umlaute werden falsch ausgegeben, je nach Hoster

Intermedia
Beiträge gesamt: 1287

13. Jul 2017, 08:56
Beitrag # 2 von 3
Beitrag ID: #558609
Bewertung:
(10776 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin,

das kann viele Ursachen haben, hier mal eine Checkliste:
https://php-de.github.io/jumpto/utf-8/

Eventuell hilft es weiter.

Gruß Sven


als Antwort auf: [#558607]

Umlaute werden falsch ausgegeben, je nach Hoster

macmac
Beiträge gesamt: 394

13. Jul 2017, 11:26
Beitrag # 3 von 3
Beitrag ID: #558615
Bewertung:
(10757 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Sven

das hat mir endlich die Lösung gebracht, jedoch eher mehr Zufall, aber nun klappt Eintrag und Ausgabe endlich reibungslos: Habe den Code

$db->query("SET NAMES 'utf8'");

an die Verbindung gehängt, also (ich wusste nie "wohin" mit dem Code):


$db = mysqli_connect("localhost", "benutzername", "passwort", "datenbankname");

$db->query("SET NAMES 'utf8'");

(auf: http://php.net/manual/en/mysqli.query.php)

Allerdings eher zufällig, kaum nachvollziehbar für Laien wie mich.

Nun kann ich endlich aufatmen.

Danke für den Link

macmac


als Antwort auf: [#558609]
(Dieser Beitrag wurde von macmac am 13. Jul 2017, 11:26 geändert)