Hallo,
ich weiß nicht, ob ich hier zwingend richtig bin, aber lest einmal selbst.
folgende Situation:
PHP macht Datenbankabfragen die per ODBC an MSSQL 2005 Express geschickt werden. Die Ergebnisse werden per json_encode in JSON übertragen.
Nun scheint aber irgendeine Geschichte mit Umlauten nicht zu funktionieren. Mit wird stattdessen im JSON "null" angezeigt. Wenn ich das Array normal ausgeben lassen, funktionieren die Umlaute. json_encode kann leider nur UTF-8 umwandeln und dort liegt vermutlich auch das Problem.
In der PHP.ini wurde defaultCharset als UTF-8 angegeben und das funktioniert auch soweit denke ich. Nun verwendet MSSQL leider anscheinend nicht UTF-8 sondern UCS-2. Wie bekomme ich MSSQL dazu UTF-8 auszuspucken oder wo kann ich ansonsten ansetzen? In PHP jedesmal von UCS-2 in UTF-8 kodieren? Funktioniert das zuverlässig?
Vielen Dank
ich weiß nicht, ob ich hier zwingend richtig bin, aber lest einmal selbst.
folgende Situation:
PHP macht Datenbankabfragen die per ODBC an MSSQL 2005 Express geschickt werden. Die Ergebnisse werden per json_encode in JSON übertragen.
Nun scheint aber irgendeine Geschichte mit Umlauten nicht zu funktionieren. Mit wird stattdessen im JSON "null" angezeigt. Wenn ich das Array normal ausgeben lassen, funktionieren die Umlaute. json_encode kann leider nur UTF-8 umwandeln und dort liegt vermutlich auch das Problem.
In der PHP.ini wurde defaultCharset als UTF-8 angegeben und das funktioniert auch soweit denke ich. Nun verwendet MSSQL leider anscheinend nicht UTF-8 sondern UCS-2. Wie bekomme ich MSSQL dazu UTF-8 auszuspucken oder wo kann ich ansonsten ansetzen? In PHP jedesmal von UCS-2 in UTF-8 kodieren? Funktioniert das zuverlässig?
Vielen Dank
Comment