NOTA: Hay mucha info en Google y aquí mismo en los foros sobre los debates de juegos de carácteres (charset). No obstante aquí va mi respuesta.
Usa UTF-8, es unicode y te permitirá manejarte con todos los idiomas.
Ahora atento, para que funcione, TODO, absolutamente TODO debe estar en UTF-8. Es decir, tus scripts PHP, tus templates, tus HTML deben guardarse como UTF-8. No sé que editor de texto usas para tus script pero asegurate de convertir todos a UTF-8 y que de ahí en adelante todo archivo nuevo lo guarde en UTF-8.
Luego te vas a la base de datos y haces lo mismo, configuras que la base use por default UTF-8 como en cada una de las tablas, para el caso de MySQL usa la collation utf8_general_ci.
Por último tenemos que avisarle al servidor web que a tí se te dieron las ganas de usar UTF-8 porque un loco en un foro te dijo que lo uses, para que el servidor web cuando envíe tus HTML, CSS, etc al cliente envíe todo en UTF-8 (por cierto, tambien convierte a UTF-8 tus CSS, JavaScript...) para esto en el caso de Apache lo hacemos a través de los famosos .htaccess:
Yo uso Notepad++ y es muy simple y rapido convertir archivos a UTF-8 si lo usas, vas a [Formato]/[Convertir en UTF-8 sin BOM ]. ¿Por qué sin BOM? no lo recuerdo en este momento, pero lo leí hace mucho creo que era algo como un bit para ampliar la cantidad de carácteres, si algun forero lo sabe que lo comente, la cuestión es que conviene usar UTF-8 sin BOM.