PDO Kullanımı, PDO ile SELECT Sorgusu
PDO'da SELECT sorgusunu Çalıştırmak için Temelde Parametrelerin Türüne ve Sonuç Türünü Göstermenin Birkaç Yolu Var.
Her Durumu ve Sonuçları Örneklerle Belirteceğim için Kavramları Daha iyi Anlayabiliceksiniz
Parametreler olmadan SELECT sorgusu
Parametre Sorgusunda Kullanılacak Değişken Yoksa query() Yerine Geleneksel bir yöntem kullanabiliriz .
$stmt = $pdo->query("SELECT * FROM kullanici");
Bu bize $stmt gerçek satırları almak için kullanılabilecek bir nesne verecektir .
Tek bir satır almak
Bir sorgunun sadece bir satır döndürmesi gerekiyorsa fetch() $stmt değişkenin yöntemini çağırabilirsiniz :
$stmt = $pdo->query("SELECT * FROM kullanici ORDER BY id DESC LIMIT 1");
$uye = $stmt->fetch();
PHP'de, yöntem çağrıları yaparak, zaten döndürülen nesnenin bir yöntemini çağırarak sıralama yapabileceğinizi unutmayın:
$uye = $pdo->query("SELECT * FROM kullanici ORDER BY id DESC LIMIT 1")->fetch();
Birden çok satır seçme
Bir sorgunun döndürdüğü çoklu satırları almanın iki yolu vardır. En geleneksel yol, fetch() yöntemi bir while döngüsü içinde kullanmaktır :
$stmt = $pdo->query("SELECT * FROM kullanici");
while ($row = $stmt->fetch()) {
echo $row['isim']."<br />\n";
}
Bu yöntem, satırların birer birer işlenmesi gerektiğinde önerilebilir.
Örneğin, bu tür bir işlem yapılması gereken tek işlemse veya verilerin bir şekilde kullanımdan önce işlenmesi gerekiyorsa.
Ancak, bir web sayfasında gösterilecek olan birden çok satırı almak için en çok tercih edilen yol,
çağrılan büyük yardımcı yöntemi çağırmaktır fetchAll().
Bir sorgu tarafından döndürülen tüm satırları bir PHP dizisine koyacaktır,
bu daha sonra bir şablon kullanarak veriyi çıktılamak için kullanılabilecektir
$data = $pdo->query("SELECT * FROM kullanici")->fetchAll();
foreach ($data as $row) {
echo $row['isim']."<br />\n";
}
SELECT sorgusu parametrelerini
Çoğu zaman sorguda bir veya iki değişken kullanmamız gerekir
PDO'da hem konumsal hem de adlandırılmış yer tutucuları kullanabiliriz.
Konumsal yer tutucularla SELECT sorgusu
$stmt = $pdo->prepare("SELECT * FROM kullanici WHERE id=?");
$stmt->execute([$id]);
$uye = $stmt->fetch();
SELECT sorgusunu adlandırılmış yer tutucularla birlikte kullanılması
$stmt = $pdo->prepare("SELECT * FROM kullanici WHERE id=:id");
$stmt->execute(['id' => $id]);
$uye = $stmt->fetch();
Birden çok satır seçme
Hazırlanmış bir sorgudan birden fazla satır almak, daha önce gösterilen parametreler olmadan bir sorgu ile aynı olacaktır:
$stmt = $pdo->query("SELECT * FROM kullanici LIMIT ?, ?");
$stmt->execute([$limit, $offset]);
while ($row = $stmt->fetch()) {
echo $row['isim']."<br />\n";
}
veya
$stmt = $pdo->prepare("SELECT * FROM kullanici LIMIT :limit, : offset");
$stmt->execute(['limit' => $limit, 'offset' => $offset]);
$data = $stmt->fetchAll();
foreach ($data as $row) {
echo $row['isim']."<br />\n";
}
Bu klavuzu beğendinse like at
Sorularınıza olursa Cevap vermekten memnuniyet Duyarım
Bir önceki derse gitmek için Tıkla
PDO'da SELECT sorgusunu Çalıştırmak için Temelde Parametrelerin Türüne ve Sonuç Türünü Göstermenin Birkaç Yolu Var.
Her Durumu ve Sonuçları Örneklerle Belirteceğim için Kavramları Daha iyi Anlayabiliceksiniz
Parametreler olmadan SELECT sorgusu
Parametre Sorgusunda Kullanılacak Değişken Yoksa query() Yerine Geleneksel bir yöntem kullanabiliriz .
$stmt = $pdo->query("SELECT * FROM kullanici");
Bu bize $stmt gerçek satırları almak için kullanılabilecek bir nesne verecektir .
Tek bir satır almak
Bir sorgunun sadece bir satır döndürmesi gerekiyorsa fetch() $stmt değişkenin yöntemini çağırabilirsiniz :
$stmt = $pdo->query("SELECT * FROM kullanici ORDER BY id DESC LIMIT 1");
$uye = $stmt->fetch();
PHP'de, yöntem çağrıları yaparak, zaten döndürülen nesnenin bir yöntemini çağırarak sıralama yapabileceğinizi unutmayın:
$uye = $pdo->query("SELECT * FROM kullanici ORDER BY id DESC LIMIT 1")->fetch();
Birden çok satır seçme
Bir sorgunun döndürdüğü çoklu satırları almanın iki yolu vardır. En geleneksel yol, fetch() yöntemi bir while döngüsü içinde kullanmaktır :
$stmt = $pdo->query("SELECT * FROM kullanici");
while ($row = $stmt->fetch()) {
echo $row['isim']."<br />\n";
}
Bu yöntem, satırların birer birer işlenmesi gerektiğinde önerilebilir.
Örneğin, bu tür bir işlem yapılması gereken tek işlemse veya verilerin bir şekilde kullanımdan önce işlenmesi gerekiyorsa.
Ancak, bir web sayfasında gösterilecek olan birden çok satırı almak için en çok tercih edilen yol,
çağrılan büyük yardımcı yöntemi çağırmaktır fetchAll().
Bir sorgu tarafından döndürülen tüm satırları bir PHP dizisine koyacaktır,
bu daha sonra bir şablon kullanarak veriyi çıktılamak için kullanılabilecektir
$data = $pdo->query("SELECT * FROM kullanici")->fetchAll();
foreach ($data as $row) {
echo $row['isim']."<br />\n";
}
SELECT sorgusu parametrelerini
Çoğu zaman sorguda bir veya iki değişken kullanmamız gerekir
PDO'da hem konumsal hem de adlandırılmış yer tutucuları kullanabiliriz.
Konumsal yer tutucularla SELECT sorgusu
$stmt = $pdo->prepare("SELECT * FROM kullanici WHERE id=?");
$stmt->execute([$id]);
$uye = $stmt->fetch();
SELECT sorgusunu adlandırılmış yer tutucularla birlikte kullanılması
$stmt = $pdo->prepare("SELECT * FROM kullanici WHERE id=:id");
$stmt->execute(['id' => $id]);
$uye = $stmt->fetch();
Birden çok satır seçme
Hazırlanmış bir sorgudan birden fazla satır almak, daha önce gösterilen parametreler olmadan bir sorgu ile aynı olacaktır:
$stmt = $pdo->query("SELECT * FROM kullanici LIMIT ?, ?");
$stmt->execute([$limit, $offset]);
while ($row = $stmt->fetch()) {
echo $row['isim']."<br />\n";
}
veya
$stmt = $pdo->prepare("SELECT * FROM kullanici LIMIT :limit, : offset");
$stmt->execute(['limit' => $limit, 'offset' => $offset]);
$data = $stmt->fetchAll();
foreach ($data as $row) {
echo $row['isim']."<br />\n";
}
Bu klavuzu beğendinse like at
Sorularınıza olursa Cevap vermekten memnuniyet Duyarım
Bir önceki derse gitmek için Tıkla
Last edited: