[MySQL] Frage zu "Set Names UTF8"

B

ByeBye 242513

Mahlzeit,

ich komme einfach nicht drauf wie der richtige Umgang mit Set Names funktioniert. Soweit ich weiß muss dieser beim Aufbau der MySQL-Verbindung geschehen und nicht bei jedem Query, oder?

Mein Verbindungsaufbau sieht folgendermaßen aus, wo baue ich jetzt Set Names mit UTF8 ein?
Code:
  define('MySQL_Host',      'localhost');
  define('MySQL_Benutzer',  'XXXXXXX');
  define('MySQL_Kennwort',  'XXXXXXX');
  define('MySQL_Datenbank', 'XXXXXXX');
  
  $db_link 	= mysql_connect(MySQL_Host, MySQL_Benutzer, MySQL_Kennwort) or die(error_report(mysql_error(), mysql_errno()));
  $db_sel	= mysql_select_db(MySQL_Datenbank) or die(error_report(mysql_error(), mysql_errno()));

Danke im Vorraus :)
 
So funktioniert es:
Code:
$db_link = mysql_query('SET NAMES UTF8');
 
Zuletzt bearbeitet von einem Moderator:
Mit SET NAMES setzt du den Zeichensatz der aktuellen Verbindung. Das bedeutet, dass es ausreichend ist, die Verbindung einmalig zu "konfigurieren". Dementsprechend sollte die Einstellung unmittelbar nach dem Aufbau der Verbindung vorgenommen werden.

1. Connect
2. Konfiguration (z.B. SET NAMES)
3. Abfragen
4. Abfragen
etc.

In PHP kannst du jedes beliebige Kommando z.B. mit mysql_query (Kommando) aufrufen. Wenn du PDO verwendest, kannst du den Zeichensatz direkt an das PDO Objekt zur Verbindung übergeben (siehe http://www.php.net/manual/de/ref.pdo-mysql.php#90444).

Grüße BN
 
Zurück