• 25-11-2014, 20:37:31
    #1
    iyi forumlar arkadaşlar,

    form aracılığıyla db ye kayıt yapıyorum. onlarda sorun yok. türkçe karakterler sorun çıkartmıyor. fakat daha önceki kayıtlı olanları import ettiğim zaman türkçe karakterleri okumuyor. il ilçe tabloları var. onları direk import ediyorum. phpmyadminden bakıyorum sorun yok. phpmyadminden elle düzeltme yapınca yine sorun oluyor. bd den kayıtları okurken türkçe karakterler sorunlu görünüyor. ama dediğim gibi form aracılığıyla kayıt yaptığımda hiçbirinde sorun yok. sebebi ne olabilir sizce ?

    yardımlarınız için teşekkürler.
  • 26-11-2014, 00:40:38
    #2
    Aşağıdaki satırı veritabanı bağlantısından sonra sorgu olarak çalıştırmayı deneyin.

    Set Names 'Utf8'
  • 26-11-2014, 07:14:08
    #3
    hocam cevabınız için teşekkür ederim. dediğiniz gibi sorgu olarak denedim, dosyaları utf8 bomsuz kaydettim, meta etiketi ekledim, header bilgisi girdim, iconv ile değiştirmeyi denedim. ama malesef pdo kullandığım zaman hep sorun verdi. pdo dan vazgeçip normal mysql kullandım sorun yok. ama pdo ya geçince sorun var. atladığım bişey var mutlaka ama nedir bi türlü bulamadım.
  • 26-11-2014, 07:52:34
    #4
    Üyeliği durduruldu
    sehzadem adlı üyeden alıntı: mesajı görüntüle
    hocam cevabınız için teşekkür ederim. dediğiniz gibi sorgu olarak denedim, dosyaları utf8 bomsuz kaydettim, meta etiketi ekledim, header bilgisi girdim, iconv ile değiştirmeyi denedim. ama malesef pdo kullandığım zaman hep sorun verdi. pdo dan vazgeçip normal mysql kullandım sorun yok. ama pdo ya geçince sorun var. atladığım bişey var mutlaka ama nedir bi türlü bulamadım.
    Direk yüklüyorum yani import ediyorum diyorsunuz.

    SQL dosyanızın içeriğinde sorun olmuş olabilir. Yani CI size SQL ne varsa onu karekter hatası olmadan yansıtır. Yani PHPMYADMİN de hata görüyorsanız şayet.

    SQL dosyanızın bir örneğini atın. Önemsiz bilgi kayıtları sadece.
  • 28-11-2014, 01:48:57
    #5
    tolgatasci adlı üyeden alıntı: mesajı görüntüle
    Direk yüklüyorum yani import ediyorum diyorsunuz.

    SQL dosyanızın içeriğinde sorun olmuş olabilir. Yani CI size SQL ne varsa onu karekter hatası olmadan yansıtır. Yani PHPMYADMİN de hata görüyorsanız şayet.

    SQL dosyanızın bir örneğini atın. Önemsiz bilgi kayıtları sadece.
    -- phpMyAdmin SQL Dump
    -- version 4.1.14
    -- http://www.phpmyadmin.net
    --
    -- Anamakine: 127.0.0.1
    -- Üretim Zamanı: 28 Kas 2014, 00:47:21
    -- Sunucu sürümü: 5.6.17
    -- PHP Sürümü: 5.5.12
    
    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    SET time_zone = "+00:00";
    
    
    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES utf8 */;
    
    --
    -- Veritabanı: `secim`
    --
    
    -- --------------------------------------------------------
    
    --
    -- Tablo için tablo yapısı `city`
    --
    
    CREATE TABLE IF NOT EXISTS `city` (
      `idCity` int(11) NOT NULL AUTO_INCREMENT,
      `cityName` varchar(500) NOT NULL,
      PRIMARY KEY (`idCity`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=82 ;
    
    --
    -- Tablo döküm verisi `city`
    --
    
    INSERT INTO `city` (`idCity`, `cityName`) VALUES
    (1, 'Adana'),
    (2, 'Adıyaman'),
    (3, 'Afyon'),
    (4, 'Ağrı'),
    (5, 'Amasya'),
    (6, 'Ankara'),
    (7, 'Antalya'),
    (8, 'Artvin'),
    (9, 'Aydın'),
    (10, 'Balıkesir'),
    (11, 'Bilecik'),
    (12, 'Bingöl'),
    (13, 'Bitlis'),
    (14, 'Bolu'),
    (15, 'Burdur'),
    (16, 'Bursa'),
    (17, 'Çanakkale'),
    (18, 'Çankırı'),
    (19, 'Çorum'),
    (20, 'Denizli'),
    (21, 'Diyarbakır'),
    (22, 'Edirne'),
    (23, 'Elazığ'),
    (24, 'Erzincan'),
    (25, 'Erzurum'),
    (26, 'Eskişehir'),
    (27, 'Gaziantep'),
    (28, 'Giresun'),
    (29, 'Gümüşhane'),
    (30, 'Hakkari'),
    (31, 'Hatay'),
    (32, 'Isparta'),
    (33, 'İçel(Mersin)'),
    (34, 'İstanbul'),
    (35, 'İzmir'),
    (36, 'Kars'),
    (37, 'Kastamonu'),
    (38, 'Kayseri'),
    (39, 'Kırklareli'),
    (40, 'Kırşehir'),
    (41, 'Kocaeli'),
    (42, 'Konya'),
    (43, 'Kütahya'),
    (44, 'Malatya'),
    (45, 'Manisa'),
    (46, 'Kahramanmaraş'),
    (47, 'Mardin'),
    (48, 'Muğla'),
    (49, 'Muş'),
    (50, 'Nevşehir'),
    (51, 'Niğde'),
    (52, 'Ordu'),
    (53, 'Rize'),
    (54, 'Sakarya'),
    (55, 'Samsun'),
    (56, 'Siirt'),
    (57, 'Sinop'),
    (58, 'Sivas'),
    (59, 'Tekirdağ'),
    (60, 'Tokat'),
    (61, 'Trabzon'),
    (62, 'Tunceli'),
    (63, 'Şanlıurfa'),
    (64, 'Uşak'),
    (65, 'Van'),
    (66, 'Yozgat'),
    (67, 'Zonguldak'),
    (68, 'Aksaray'),
    (69, 'Bayburt'),
    (70, 'Karaman'),
    (71, 'Kırıkkale'),
    (72, 'Batman'),
    (73, 'Şırnak'),
    (74, 'Bartın'),
    (75, 'Ardahan'),
    (76, 'Iğdır'),
    (77, 'Yalova'),
    (78, 'Karabük'),
    (79, 'Kilis'),
    (80, 'Osmaniye'),
    (81, 'Düzce');
    
    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
    buyrun hocam. iller tablosu. inşallah yapıda bir hata vardır. önceki mesajda belirttiğim gibi. model de pdo kullanırsam türkçe karakter hatalı, mysql kullanırsam sorun yok.

    ekleme:

    localde çalışırken pdo da da sıkıntı yok. hosta atınca sıkıntı çıkardı.
  • 28-11-2014, 02:00:15
    #6
    Üyeliği durduruldu
    Bunu deneyin
    -- phpMyAdmin SQL Dump
    -- version 4.1.14
    -- http://www.phpmyadmin.net
    --
    -- Anamakine: 127.0.0.1
    -- Üretim Zamanı: 28 Kas 2014, 00:47:21
    -- Sunucu sürümü: 5.6.17
    -- PHP Sürümü: 5.5.12
     
    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    SET time_zone = "+00:00";
     
     
    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES utf8 */;
     
    --
    -- Veritabanı: `secim`
    --
     
    -- --------------------------------------------------------
     
    --
    -- Tablo için tablo yapısı `city`
    --
     
    CREATE TABLE IF NOT EXISTS `city` (
      `idCity` int(11) NOT NULL AUTO_INCREMENT,
      `cityName` varchar(500) COLLATE utf8_turkish_ci NOT NULL,
      PRIMARY KEY (`idCity`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_turkish_ci AUTO_INCREMENT=82 ;
     
    --
    -- Tablo döküm verisi `city`
    --
     
    INSERT INTO `city` (`idCity`, `cityName`) VALUES
    (1, 'Adana'),
    (2, 'Adıyaman'),
    (3, 'Afyon'),
    (4, 'Ağrı'),
    (5, 'Amasya'),
    (6, 'Ankara'),
    (7, 'Antalya'),
    (8, 'Artvin'),
    (9, 'Aydın'),
    (10, 'Balıkesir'),
    (11, 'Bilecik'),
    (12, 'Bingöl'),
    (13, 'Bitlis'),
    (14, 'Bolu'),
    (15, 'Burdur'),
    (16, 'Bursa'),
    (17, 'Çanakkale'),
    (18, 'Çankırı'),
    (19, 'Çorum'),
    (20, 'Denizli'),
    (21, 'Diyarbakır'),
    (22, 'Edirne'),
    (23, 'Elazığ'),
    (24, 'Erzincan'),
    (25, 'Erzurum'),
    (26, 'Eskişehir'),
    (27, 'Gaziantep'),
    (28, 'Giresun'),
    (29, 'Gümüşhane'),
    (30, 'Hakkari'),
    (31, 'Hatay'),
    (32, 'Isparta'),
    (33, 'İçel(Mersin)'),
    (34, 'İstanbul'),
    (35, 'İzmir'),
    (36, 'Kars'),
    (37, 'Kastamonu'),
    (38, 'Kayseri'),
    (39, 'Kırklareli'),
    (40, 'Kırşehir'),
    (41, 'Kocaeli'),
    (42, 'Konya'),
    (43, 'Kütahya'),
    (44, 'Malatya'),
    (45, 'Manisa'),
    (46, 'Kahramanmaraş'),
    (47, 'Mardin'),
    (48, 'Muğla'),
    (49, 'Muş'),
    (50, 'Nevşehir'),
    (51, 'Niğde'),
    (52, 'Ordu'),
    (53, 'Rize'),
    (54, 'Sakarya'),
    (55, 'Samsun'),
    (56, 'Siirt'),
    (57, 'Sinop'),
    (58, 'Sivas'),
    (59, 'Tekirdağ'),
    (60, 'Tokat'),
    (61, 'Trabzon'),
    (62, 'Tunceli'),
    (63, 'Şanlıurfa'),
    (64, 'Uşak'),
    (65, 'Van'),
    (66, 'Yozgat'),
    (67, 'Zonguldak'),
    (68, 'Aksaray'),
    (69, 'Bayburt'),
    (70, 'Karaman'),
    (71, 'Kırıkkale'),
    (72, 'Batman'),
    (73, 'Şırnak'),
    (74, 'Bartın'),
    (75, 'Ardahan'),
    (76, 'Iğdır'),
    (77, 'Yalova'),
    (78, 'Karabük'),
    (79, 'Kilis'),
    (80, 'Osmaniye'),
    (81, 'Düzce');
     
    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
  • 28-11-2014, 02:41:07
    #7
    hocam sizin verdiğiniz gibi de ekledim zaten ama yine olmadı. veri tabanına ekleme yaparken tükçe karakterleri dönüşütürüyor. anlamsız karekterlere okurken normal okuyor. bu defa da eklediği verilerde türkce karakter hatası veriyor. neyse şimdilik mysql ile halloldu sistem çalışıyor. tekrar bi araştırma yaparım. belki CI ın pdo db ayarlarını bozmuş olabilir tekrar sıfırdan farklı bir sistem için denerim. teşekkürler yardımınız için.
  • 28-11-2014, 02:48:05
    #8
    Üyeliği durduruldu
    sehzadem adlı üyeden alıntı: mesajı görüntüle
    hocam sizin verdiğiniz gibi de ekledim zaten ama yine olmadı. veri tabanına ekleme yaparken tükçe karakterleri dönüşütürüyor. anlamsız karekterlere okurken normal okuyor. bu defa da eklediği verilerde türkce karakter hatası veriyor. neyse şimdilik mysql ile halloldu sistem çalışıyor. tekrar bi araştırma yaparım. belki CI ın pdo db ayarlarını bozmuş olabilir tekrar sıfırdan farklı bir sistem için denerim. teşekkürler yardımınız için.
    $this->db->insert('tablo',array('field'=> 'veri'));

    bu şekilde eklemiyormusun ? İlk defa bu hatayı alanla karşılaştım ben kaç yıldır CI kullanıyorum
  • 28-11-2014, 02:55:21
    #9
    hocam dediğiniz gibi mysql de bu şekilde kullanıyorum. sorun yok ama pdo seçince $this->db->conn_id-> ... pdo fonksiyonları şeklide kullanıyorum.