PDO Kullanımı, PDO :: query () Sorgusunu Çalıştırma

Discussion in 'Programming - Yazılım' started by Cloud Iot Core, Jun 11, 2019.

  1. Cloud Iot Core

    Cloud Iot Core

    Mesajlar:
    62
    Likes Received:
    70
    PDO :: query () Sorgusunu Çalıştırma

    PDO'da Herhangi Bir Sorgu Çalıştırmanın iki yolu vardır. Çalıştıracağımız Sorguda hiçbir değişken kullanılmayacaksa,

    PDO :: query () yöntemini kullanabilirsiniz.
    PDO :: query () Sorgunuzu çalıştırır Özellikle gerçek Satırları Alabileceğiniz Şekilde PDOStatement Sınıfının Özel Nesnesini Çevirir


    <?php

    $stmt = $pdo->query('SELECT isim FROM kullanici');
    while ($row = $stmt->fetch())
    {
    echo $row['isim'] . "\n";
    }

    ?>

    Ayrıca query() Yöntemleri SELECT sorguları için Temiz Bir Köprüleme Kullanmamızada izin verir.

    Hazırlanan ifadelerde SQL Açıklarında Korumayıda ihmal Etmemek Gerekiyor

    Çalıştırdığınız Her Sorgu için, En Az Bir Değişken kullanılacaksa Sorgunuzu Hazırlamanız ve Daha Sonra Değişkenleri ayrı ayrı Değerlerden Geçirmeniz Gerekiyor

    Bunun içinde Sadece iki Değere ihtiyacınız var prepare () ve execute ()

    Değişkeninizi Yerine Yer Tutucuları Ekleyerek Sorgunuzu Değiştirmeniz gerek


    $sql = "SELECT * FROM kullanıci WHERE email = '$email' AND durum='$durum'";

    Olacak

    $sql = 'SELECT * FROM kullanici WHERE email = ? AND durum=?';

    veya

    $sql = 'SELECT * FROM kullanici WHERE email = :email AND durum=:durum';

    PDO'nun Positional (?) ve isim ( :email) Yer Yutucularını Desteklediğine Dikkat Edin

    ikincisi Her Zaman Bir Kolondan Başlar ve Yalnızca Harfler, Rakamlar ve Alt Çizgiler kullanılarak Yazılabilir.
    Ayrıca, Yer Tutucuların Çevresinde Hiçbir Sorgunu Kullanılması Gerekmediğini de Unutmayın.

    Yer Tutucularla Bir Sorgu Yapmak için, PDO : : prepare() Yöntemi Kullanarak Hazırlamanız Gerekir.
    Bu işlev PDOStatement Yukarıda Bahsettiğimiz Nesneyi Geri Çağıracak Ancak Hiçbir Veri Eklenmemiş Olacak.

    Son Olarak, Sorguyu Çalıştırmak için, execute() Değişkenleri Dizi Biçiminde Geçirerek Bu Nesnenin Yöntemini Çalıştırmalısınız.
    Bundan sonra, Elde Edilen Verileri ifadeden Çıkartabileceksiniz


    $stmt = $pdo->prepare('SELECT * FROM kullanici WHERE email = ? AND durum=?');
    $stmt->execute([$email, $durum]);
    $user = $stmt->fetch();

    // veya
    $stmt = $pdo->prepare('SELECT * FROM kullanici WHERE email = :email AND durum=:durum');
    $stmt->execute(['email' => $email, 'durum' => $durum]);
    $user = $stmt->fetch();


    Gördüğünüz gibi, Konumsal Yer Tutucular için, Değerlerle Normal Bir Dizi sağlamanız gerekir
    Oysaki Adlandırılmış Yer Tutucular için, Anahtarların Sorgudaki Yer Tutucu Adları ile Eşleşmesi Gereken ilişkisel Bir Dizi Olması Gerekir.
    Konumsal ve adlandırılmış yer Tutucuları Aynı Sorguda Asla Karıştıramazsınız.
    Bu Klavuzda Anlatıldığı Gibi Desteklenen Tüm Yöntemleri Kullanarak Verilerinizi Almaya Başlayabilirsiniz.

    PDO Veritabanı Bağlantısı için İlgili linke Linkleri görebilmek için login-giriş yapman gerekiyor veya konuya like atman lazım

    Bir sonraki PDO klavuzu için takipte kalın
     
    Âlfonse likes this.
  2. Quaxer

    Quaxer

    Mesajlar:
    841
    Likes Received:
    732
    Bir php/pdo severi olarak yazilarini cok begeniyorum.
     
    Âlfonse likes this.
Loading...

Bu sayfayı Paylaş