Kayıtları güncellerken hata alan arkadaşlar db.php dosyasındaki kodları aşağıdakiler ile değiştirin sorununuz çözülecektir.
<?php
class DB {
private static $_baglan = null;
private $_pdo,
$_query,
$_hatalar = false,
$_sonuc,
$_sayac = 0;
private function __construct(){
try {
$this->_pdo = new PDO('mysql:host=' . Config::getir('mysql/host') . ';dbname=' . Config::getir('mysql/db'),
Config::getir('mysql/kullanici_adi'), Config::getir('mysql/sifre'));
$this->_pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$this->_pdo->exec("set names utf8");
} catch(PDOException $e) {
die($e->getMessage());
}
}
public static function baglan(){
if(!isset(self::$_baglan)){
self::$_baglan = new DB();
}
return self::$_baglan;
}
public function query($sql, $parametre = array()){
$this->_hatalar = false;
if($this->_query = $this->_pdo->prepare($sql)) {
$x = 1;
if (count($parametre)) {
foreach ($parametre as $param) {
$this->_query->bindValue($x, $param);
$x++;
}
}
if($this->_query->execute()){
if(strpos($sql, "FROM") !== false) {
$this->_sonuc = $this->_query->fetchAll(PDO::FETCH_OBJ);
$this->_sayac = $this->_query->rowCount();
}
} else {
$this->_hatalar = true;
}
}
return $this;
}
public function eylem($eylem, $tablo, $where = array()) {
if(count($where) === 3) {
$operatorler = array('=', '>', '<', '>=', '<=');
$alan = $where[0];
$operator = $where[1];
$deger = $where[2];
if(in_array($operator, $operatorler)) {
$sql = "{$eylem} FROM {$tablo} WHERE {$alan} {$operator} ?";
if(!$this->query($sql, array($deger))->hatalar()) {
return $this;
}
}
}
return false;
}
public function getir($tablo, $where) {
return $this->eylem('SELECT *', $tablo, $where);
}
public function sil($tablo, $where) {
return $this->eylem('DELETE', $tablo, $where);
}
public function ekle($tablo, $alanlar = array()) {
$set = "";
$set2 = "";
$x = 1;
foreach($alanlar as $anahtar => $deger) {
if(is_array($deger)) $deger = implode(',', $deger);
if(empty($deger)) $deger = 0;
$deger = addslashes($deger);
$set .= "{$anahtar},";
$set2 .= "'{$deger}',";
}
$g1 = substr($set, 0, -1);
$g2 = substr($set2, 0, -1);
$sql = "INSERT INTO {$tablo} ({$g1}) VALUES ({$g2})";
if(!$this->query($sql)->hatalar()) {
return true;
}
echo "Hata";
return false;
}
public function guncelle($tablo, $id, $alanlar) {
$set = '';
$x = 1;
foreach($alanlar as $anahtar => $deger) {
if(is_array($deger)) $deger = implode(',', $deger);
if(empty($deger)) $deger = null;
$deger = addslashes($deger);
$set .= "{$anahtar}='{$deger}'";
if($x < count($alanlar)) {
$set .= ', ';
}
$x++;
}
$sql = "UPDATE {$tablo} SET {$set} WHERE id = {$id}";
if(!$this->query($sql)->hatalar()) {
return true;
}
return false;
}
public function ilk() {
return $this->_sonuc[0];
}
public function yguncelle($tablo, $id, $alanlar) {
$set = '';
$x = 1;
foreach($alanlar as $anahtar => $deger) {
$set .= "{$anahtar}=?";
if($x < count($alanlar)) {
$set .= ', ';
}
$x++;
}
$sql = "UPDATE {$tablo} SET {$set} WHERE urunid = {$id}";
if(!$this->query($sql, $alanlar)->hatalar()) {
return true;
}
return false;
}
public function hatalar() {
return $this->_hatalar;
}
public function sayac() {
return $this->_sayac;
}
public function sonuc() {
return $this->_sonuc;
}
}
?>