Misafir adlı üyeden alıntı:
Sistem ayarları latin1 olarak ayarlı olan bir makinedesiniz, bu ayarları yapsanız bile bu sefer türkçe karakterlerin yerine sayfanızda soru işaretleri çıkacaktır '?' gibi.Yukarıda anlattığım nedenden dolayı bu makina latin1_swedish_ci ayarlıdır. isveç dilinde türkçe karekterler olmadığından siz verileri girerken, mysql onları anscii yapıda yerleştirmiştir veritabanına.Örnegin siz "öküz" kelimesini veritabanınıza girmişseniz onun hücredeki degeri "ö ;kü ;z" şeklindedir.
“Collation” olayının faydasını öküz örneginde daha iyi görüyorsunuz sanırım arkadaşlar.Veritabanından direk Türkçe yazılmış "öküz" kelimesini aramak başka "ö ;kü ;z" kelimesi şeklinde aramak başka performans verir.
Bu sorunu çözmek için ise scriptinizde kullandığınız config.php yada baglantıyı yaptığınız kod satırının altına yani
mysql_select_db("$dbname")fonksiyonun altına aşağıdaki kodları eklerseniz sorununuz düzelir.
mysql_query("SET NAMES 'latin5'");
mysql_query("SET CHARACTER SET latin5");
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
Latinliğine bir şey demiyorum. Yedeğini aldığın veritabanı karşılaştırması ile yüklemeye çalıştığın hosttaki karşılaştırma farklı sanırım. Ayrıca bazen karakterleri değiştirdikten sonra kaydedip yüklemeye çalışınca da bozuk olabiliyor. Eski veritabanını da bu şekilde dene bi.