[gelöst]debian jessie sonderzeichen in php-programmen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
mampfi
Beiträge: 1976
Registriert: 16.08.2005 18:15:29
Lizenz eigener Beiträge: GNU General Public License
Wohnort: münchen

[gelöst]debian jessie sonderzeichen in php-programmen

Beitrag von mampfi » 30.04.2015 13:15:27

Frisch installiertes debian/jessie:

mysql installiert
php installiert

Nun werfen meine php-Programme bei Umlauten Sonderzeichen aus, muss etwas mit dem Zeichensatz zu tun haben.

Gehe ich bei Aufruf der Programme im iceweasel auf Ansicht/Zeichenkodierung so wird ausgeworfen:

debian 6: westlich (ISO-8859-1)
debian 8 jessie: Unicode (UTF-8)

phpinfo.php gibt aus:

Local Value Master Value
bei debian 6: no value no value
debian 8 jessie: UTF-8 UTF-8

Meta-Einstellungen in php-Quellcodes bringen offenbar nichts
Zuletzt geändert von mampfi am 27.05.2015 13:12:41, insgesamt 1-mal geändert.
Es gibt viele Foren und eine Welt ausserhalb

mampfi
Beiträge: 1976
Registriert: 16.08.2005 18:15:29
Lizenz eigener Beiträge: GNU General Public License
Wohnort: münchen

Re: debian jessie sonderzeichen in php-programmen

Beitrag von mampfi » 27.05.2015 13:12:24

Problem scheint gelöst zu sein.

Tabelle umgestellt mit

ALTER TABLE Tabellenname CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci

und in Programmen nutzt man:

mysql_query("SET NAMES 'utf8'");

Es sollte eigentlich gleichermaßen beim alten debian 6 funktionieren, funktioniert aber nur beim neuen debian 8.

Somit existiert eine Weiche in den php-Programmen:

if ($utf8_on == 1) mysql_query("SET NAMES 'utf8'");
Es gibt viele Foren und eine Welt ausserhalb

Antworten