Anasayfa KonularKonuPDO Etkilenen Satır Sayısı

PDO Etkilenen Satır Sayısı

11 Ağustos 2015, 20:20 Php Dersleri Ve Kodları Henüz Yorum Yok
0
PDO Etkilenen Satır Sayısı

Merhabalar

Mysql ile etkilenen satır sayısını mysql_affected_rows() ile yapıyorduk. Peki bu işlemi PDO ile nasıl yapabiliriz onu göstermeye çalışacağım. Örneklerin açıklayıcı olması açısından hem mysql ile hemde PDO ile yapacağım. PDO'da DELETE, UPDATE, INSERT gibi işlelemlerden etkilenen satır sayısını döndürmek için kullanılır.

İlk önce bu işlemi mysql ile nasıl yapıyorduk öncelikle ona bakalım;


<?php
  $host = "localhost";
  $root  = "root";
  $sifre = "";
  $vt = "kisisel";
  $baglan = mysql_connect($host,$root,$sifre) or die(mysql_error());
  $vt_sec = mysql_select_db($vt,$baglan);
$konu_sil = mysql_query("DELETE FROM haberler WHERE haber_id < 15");
echo mysql_affected_rows()." satır silindi.";
?>

En son yapılan mysql sorgusundan etkilenen satır sayısını döndürür.

Şimdi de bu işlemi PDO ile nasıl yapacağımıza bakalım;


<?php
  $host = "localhost";
  $root  = "root";
  $sifre = "";
  $vt = "kisisel";
  try{
	$baglan = new PDO ("mysql:host=$host;dbname=$vt;charset=utf8",$root,$sifre);
  }
  catch(PDOException $e){
	$e->getMessage();
  }
  $konu_sil = $baglan->exec("DELETE FROM haberler WHERE haber_id < '15'");
  echo $konu_sil.' satır silindi.';
?>

İkinci bir örnek vermek gerekirse;


<?php
  $ad = "admin";
  $giris = $baglan->prepare("SELECT * FROM uye WHERE ad = ?");
  $giris->execute(array($ad));
  echo $giris->rowCount()." satır etkilendi.";
?>

İkinci örnekteki gibi değerleri formdan gelen bilgilere göre alıp kontrol edebiliriz.


<form action="" method="post">
  Kullanıcı Adı:<input type="text" name="ad" />
  Şifre: <input type="password" name="sifre" />
  <button type="submit">Giriş Yap</button>
</form>


<?php 
  if($_POST){
      $ad = $_POST["ad"];
      $sifre = $_POST["sifre"];
      $uye_kontrol = $baglan->prepare("SELECT * FROM uye WHERE ad = ? AND sifre = ?");
      $uye_kontrol->execute(array($ad,$sifre));
      if($uye_kontrol->rowCount() > 0){
          //işlemler
      }
      else{
          echo 'Böyle bir üye yok...';
      }
}
?>

Basit bir işlemle etkilenen satır sayısını bulmuş olduk. Kodlar denendi ve çalışıyor. Ancak yinede çalışmayan ya da hatalı kodlar varsa bildirin lütfen. İyi çalışmalar.

Önceki konu PDO Satır Sayısı Bulma ile ilgili bilgiler vermektedir.
Sonraki konu PDO BeginTransaction Kullanımı ile ilgili bilgiler vermektedir.

Yorum Yap

Ad - Soyad (Gerçek ad ve soyadınızı giriniz) Varsa İnternet Sitesi ÖR: (http://onurdeger.com.tr) Görüşünüz
Güvenlik Sorusu 9 + 3 = ?
Onur Değer - Kişisel Blog © 2015 - 2016 | Tüm hakları saklıdır. DMCA.com Protection Status