Charset

Gestire correttamente il charset per lo scambio di dati tra client, server web e server dati è molto importante.

Per siti solo in italiano, o al massimo in lingue europee il discorso è semplice. Basta settare in ogni componente del processo il charset corretto.

PHP : header(‘Content-Type: text/html; charset=iso-8859-15′);
HTML: <meta equiv=”Content-Type” content=”text/html; charset=iso-8859-15″>
MySQL: Collation latin1_swedish_ci

Il Charset iso-8859-15 gestisce correttamente tutte le lingue europee e include il simbolo dell’euro. Per esigenze piu complesse si puo usare l’ UTF-8, ma raramente è necessario.

In teoria il webserver dovrebbe aggiungere gia tra gli header che invia di sua iniziativa il charset ma questo potrebbe essere differente da quello impostato in mysql o adirittura non essere settato (lasciando al browser il compito di capire quale charset meglio si adatti al contenuto che deve visualizzare) perciò specificarlo in modo esplicito è un ottima abitudine