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