2010-11-30 18 views
10

Bir web sitesinin rusça bir versiyonunu yapmak zorundayım, ancak Rusça karakterleri Veritabanı içine nasıl ekleyeceğimi bulamıyorum.MySQL - Rusça karakterler hatalı görüntüleniyor

Hemen hemen her olası kodlama uğraş, ancak yalnızca gösterilmektedir:

???????? ?????????? ??????? ??????? ? ????? ?? ????????????? ? ???????, ??????? ????? ??????? ???????? ????? .??? ??????????? ???????? ????? ?? ????? ?????????? ? ????? ????????. 
??????????? ?????? ?? ???????? ????? ?? 20 ???????. ???????? ??? ?? ??????????? ?????????????? ????? ? ????????????? ??????? ??????. ? ???????, ? ??????? ? ?.?. 
+0

Veritabanı için kullanılan kodlama nedir? ve nerede göstermeye çalışıyorsunuz? – Vjy

+0

UTF8_general_ci – Mike

+0

Çıktınız nereden geliyor? Veriler çeşitli katmanlardan geçer. İşte benzer sorular için bir bağlantı mysql http://stackoverflow.com/questions/3823278/fixing-encondings – Unreason

cevap

13
  1. emin olun veritabanı charset/coallition UTF-8 bu Rus karakterleri girmek sayfada
  2. (şeklidir , textarea), İçerik Türünü text/html; charset=utf-8 olarak ayarlayarak kodlamanın UTF-8 olduğundan emin olun. Rus yazıya doğrudan form girişine girin.
  3. Veritabanına ekleyen bu formu işleyen işleme sayfasında,yapmadan önce, önce verileri ayrı bir sorguya yerleştirdiğinizde UTF-8 olarak saklandığından emin olun.
  4. İçeriği bir görünümde veritabanından oluşturduğunuzda, Content-Type'un text/html; charset=utf-8 olduğundan emin olun.

içerik türü değil windows-1251 veya iso-8859-1/latin1 olduğundan emin olun. Veritabanı karakter kümesinin/kobalisyonun ISO-8859-1/Latin1 DEĞİLSE olduğundan emin olun.

+2

ile etkilenen çeşitli parametreleri görebilirsiniz, Tamam, "emin olun" cevabınızın önemli bir ifade .. :-) Ben DB ve Tablolar üzerinde UTF-8 vardı, ama ben öğrendim, ben Columns üzerinde latin2 kodlama sabit vardı. Teşekkürler. :-) – Mike

+2

Kesinlikle "harmanlama" anlamına gelmez; – Alexxus