PHP’de veritabanı işlemleri için bir sınıf oluşturabilirsiniz. Bu, veritabanı bağlantısı ve sorguların yürütülmesi gibi işlemleri kolaylaştırabilir. İşte, MySQL ile bir PHP veritabanı sınıfı örneği:
class Database {
// Veritabanı bağlantı bilgileri
private $host = "localhost";
private $db_name = "test_db";
private $username = "root";
private $password = "";
public $conn;
// Veritabanına bağlanma fonksiyonu
public function getConnection() {
$this->conn = null;
try {
$this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);
$this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $exception) {
echo "Veritabanı bağlantısı başarısız: " . $exception->getMessage();
}
return $this->conn;
}
// Sorguyu çalıştırma fonksiyonu
public function runQuery($query) {
$stmt = $this->conn->prepare($query);
$stmt->execute();
return $stmt;
}
// Verileri okuma fonksiyonu
public function readData() {
$query = "SELECT * FROM test_table";
$result = $this->runQuery($query);
return $result->fetchAll(PDO::FETCH_ASSOC);
}
// Veri ekleme fonksiyonu
public function insertData($data) {
$query = "INSERT INTO test_table (name, email, phone) VALUES (:name, :email, :phone)";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':name', $data['name']);
$stmt->bindParam(':email', $data['email']);
$stmt->bindParam(':phone', $data['phone']);
if($stmt->execute()) {
return true;
} else {
return false;
}
}
}
Yukarıdaki örnekte, Database
adında bir sınıf tanımlanmıştır. Bu sınıfın özellikleri arasında, veritabanına bağlanmak için gerekli olan bağlantı bilgileri yer alır ($host
, $db_name
, $username
ve $password
). Ayrıca, sınıfın bağlantı fonksiyonu (getConnection()
), sorguyu çalıştırma fonksiyonu (runQuery()
), verileri okuma fonksiyonu (readData()
) ve veri ekleme fonksiyonu (insertData()
) da tanımlanmıştır.
Bu sınıfı kullanarak veritabanı işlemlerini gerçekleştirebilirsiniz. Örneğin:
$db = new Database();
$db_conn = $db->getConnection();
// Tüm verileri okuma
$data = $db->readData();
print_r($data);
// Veri ekleme
$new_data = array(
'name' => 'Emre',
'email' => '[email protected]',
'phone' => '555-1234'
);
if ($db->insertData($new_data)) {
echo "Veri eklendi.";
} else {
echo "Veri eklenemedi.";
}
Yukarıdaki örnekte, Database
sınıfından bir nesne oluşturulur ve bağlantı fonksiyonu çağrılır. Daha sonra, readData()
fonksiyonu kullanılarak tüm veriler okunur ve $data
değişkenine atanır. Son olarak, insertData()
fonksiyonu kullanılarak yeni bir veri tabanı kaydı eklenir.