• 15-12-2023, 01:59:40
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sadece bu harflerde ( ı_ş_ğ ) ( I_İ_Ş_Ğ ) küçük büyük harflerde hata veriyor.
    Mysql veri tabanı "utf8_turkish_ci" bir çok dillerde test yaptım değişmedi yine seçili verileri metin text dosyasından çekiyor.
    İçerik ekleme çekme php dosyasında sorun olduğunu düşünüyorum bazı eklemeler yapmama rağmen sonuç aynı değişmiyor.

    <?php
    $host = "localhost";
    $dbname = "xxxxx";
    $username = "xxxxx";
    $password = "xxxxx";
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        die("Veritabanı hatasi" . $e->getMessage());
    }
    $dosyaAdi = "veriler.txt";
    try {
        $dosya = fopen($dosyaAdi, "r");
        while (!feof($dosya)) {
            $satir = fgets($dosya);
     
            if (!empty($satir)) {
                $stmt = $pdo->prepare("INSERT INTO makale (adi) VALUES (:deger)");
                $stmt->bindParam(':deger', $satir);
                $stmt->execute();
            }
        }
        fclose($dosya);
        echo "eklendi";
    } catch (Exception $e) {
        echo "eklenmiyor" . $e->getMessage();
    }
    ?>
  • 15-12-2023, 02:20:04
    #2
    Bağlantıda karakter seti belirtip deneyin hocam

    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8" , $username, $password);
  • 15-12-2023, 02:29:37
    #3
    denedim olmadı hocam daha farklı bir şey var bunda
  • 15-12-2023, 10:04:02
    #4
    $dosya = fopen($dosyaAdi, "r", "utf-8");
  • 15-12-2023, 14:01:43
    #5
    Kayıt işleminin gerçekleştiği tablonuzda karekter kodlamasını utf8_turkish_ci seçtiniz mi? Ve aynı zamanda txt veri dosyanızı farklı kaydederek karekter kodlaması ANSI ise UTF-8 karekter kodlaması ile kaydedip deneyiniz.