自動判別がおかしいのはmetaタグで指定してやればよさそうだけど
根本的に、文字コードを何で出力すればよいのか設計があやふやではないかい?
少なくとも、設計の時点で、
・データベース
・ソースコード
・HTML出力
を何の文字コードで管理すべきかは決めておかないと、どこで何の文字コードに変換すべきかわからなくならないか。