アクセント付きの文字列を保存しようとすると問題が発生します。
私たちのオンライン システムはさまざまな国のクライアントが使用しているため、一部のクライアントはアクセントを使用しています。
このように保存する値を取得するリクエストを行う場合
$value = trim(strip_tags(htmlspecialchars($_REQUEST['value'], ENT_QUOTES, 'UTF-8')));
このようにして値を保存します
Gé
htmlspecialchars の代わりに htmlentities を使用すると、このように保存されます
géî
保存しようとしている正しい文字列は
Gé
画面やレポートに正しく表示できるように、これを正しく保存する必要があります。
私たちのデータベースは UTF-16 (MS SQL Server) を使用しており、このようなページで UTF-8 を使用するようにメタ タグを宣言しています。
<meta charset='utf-8'>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
接続は次のようになります。
$link = sqlsrv_connect($dbserver, array(
'Database'=>$database,
'UID' => $uid,
'PWD' => $pwd,
'CharacterSet' => 'UTF-8'
));