+ Yanıtla
Toplam 4 sonuçtan 1 ile 4 arası olanlar

Konu Başlığı: mysqle veri girişinde Türkçe karakter problemi

  1. #1

    mysqle veri girişinde Türkçe karakter problemi

    Hostingde yeni veritabanı kurarken karşılaştırmayı sormadığı için denemelerimi localde yapıyorum ve PHP versiyon 5.2.1 (appserv kurulu).

    Karşılaştırma ve string alanlarını latin5_turkish_ci olarak ayarladım. txt dosyalarındaki bir takım verileri mysqle giriyorum PHP ile. Aslında birkaç gün önce aynı veritabanına, benzer bir işlemi yapmıştım hiç problem yoktu. O PHP sayfasının üzerinde düzenlemeler yapıyordum bugün. Ancak 5 saattir nerede problem anlayamadım.

    Sayfada hatayı anlayabilmek için şöyle basit bir sayfada deneme yapıyorum.
    PHP Kodu:
    <?
    mysql_connect
    ("localhost""root""root") || die ("MySQL hatasi");
    mysql_select_db("yeni") || die ("MySQL hatasi2");

    mysql_query("SET NAMES 'latin5'");
    mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'") or mysql_error();
    mysql_query("SET CHARACTER SET latin5") or mysql_error();

    $fp=fopen("gh.txt""r");
    $oku=fread($fp1024);

    mysql_query("insert into kitaplar values('', '$oku')");
    echo 
    $oku;?
    gh.txt dosyasında ğüşıöçİĞÜŞÖÇ yazıyor. bu sayfayı çalıştırdığımda ekrana yine ğüşıöçİĞÜŞÖÇ basıyor ancak veritabanına yazılan bu: ğüşıöçİĞÜŞÖÇ

    Bir de anlayamadığım; bu PHP sayfasını not defteri ile açıp insert komutundaki $oku yerine ğüşıöçİĞÜŞÖÇ yazdığımda veritabanına istediğim gibi yazıyor :S

  2. #2

    Re: mysqle veri girişinde Türkçe karakter problemi

    PHP dosyan ya da txt dosyan UTF-8'le kodlanmış olabilir mi?

  3. #3

    Re: mysqle veri girişinde Türkçe karakter problemi

    Öyle birşeyin olabileceğini düşünmedim değil. Not defterini kurcaladım ancak kodlama ile ilgili bir bilgi, bir ayar bulamadım

    Düzeltme: Farklı kaydet diyerek dosyanın kodlamasını ANSI olarak seçince problem ortadan kalktı. Teşekkürler.

  4. #4

    Re: mysqle veri girişinde Türkçe karakter problemi

    Şöyle bir problemim daha var:
    PHP Kodu:
    <?
    $fp
    =fopen("sayfa.txt""w");
    fwrite($fp," hgfhlsereqsfcc");
    ?>
    Bu PHP sayfası ANSI kodlamalı bir dosya oluştururken
    PHP Kodu:
    <?
    $fp
    =fopen("sayfa.txt""w");
    fwrite($fp"hgfhlsereqsfccöçşğüıÖÇŞĞÜI");
    ?>
    bu ise utf-8 kodlamalı bir dosya oluşturuyor.

    Bana ise içinde Türkçe karakterler içeren bu veriyi ANSI kodlamalı olarak oluşturması lazım.

+ Yanıtla

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz