2012-12-28 25 views
11

Olası Çoğalt:
UTF-8 all the way throughPHP MySQL charset utf8 problemleri

ben başkası tarafından daha önce geliştirilen bir web sitesinde bazı yeni özellikler geliştiriyorum.

Karakter dizisinde sorun yaşıyorum.

Ben veritabanı yüzden UTF8 tüm tabloları dönüştürmek için çalışıyorum

latin1

yılında utf8 ve bazı bazı tablolar olduğunu gördüm.

Bir tablo için yaptım (ayrıca bu tablonun alanları utf8'dir), ancak başarılı olmadı.

Normal mysql bağlantısını kullanıyorum. DB'ye utf8 ile bağlanması gerektiğini söylemek için herhangi bir yapılandırma koymak zorundayım? Eğer evet ise cadı mı? Benim html olarak

Ben: Bazı harfler çalışır ve diğerleri soru işareti ile görüntülenir gibi

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

görünüyor. Örneğin o mümkün değil, bu 'da bu işin farklıdır:' gösterilecek

+0

bağlantılı olarak o zaman bu

<?php header('Content-Type: text/html; charset=utf-8'); ?> 

deneyin ve ? –

+0

delirmez. Sorunuzu tekrar kontrol edin, düzenleyin ve bir soru sorun. * "Bazı mektuplar işe yaramış gibi görünüyor ve diğerleri soru işaretini gösteriyor." * - Bu tür cümleler sadece yardımcı olmuyor. Bahse girerim, onlar da yardımcı olmazlar. – hakre

+0

Ayrıca, belgeleriniz için kodu aldığınız kişiye başvurun. Ayrıca sorunuzu arayın. Örneğin. mysql karakter konfigürasyonu ile ilgili bölüm daha önce sorulmuş ve cevaplanmıştır - tekrar sormanız gerekmez, sadece arama yapabilirsiniz. Örneğin. [“SET NAMES” i (http://stackoverflow.com/q/1650591/367456) ve [SET NAMES utf8'i MySQL içinde mi kullanacaksınız?] (Http://stackoverflow.com/q/2159434/367456). – hakre

cevap

29

karakter DB soru işareti olarak görüntüleniyor Hangi

<?php 
$dbLink = mysql_connect($argHost, $argUsername, $argPassword); 
    mysql_query("SET character_set_results=utf8", $dbLink); 
    mb_language('uni'); 
    mb_internal_encoding('UTF-8'); 
    mysql_select_db($argDB, $dbLink); 
    mysql_query("set names 'utf8'",$dbLink); 
?> 
+0

Bunu yaptım ve ayrıca kullanılan tüm htmlentities() ve utf8_encode() işlevlerini kaldırmam gerekiyordu. Teşekkürler – Samuele