MySQL PHP ile nasıl entegre edilir? (mysqli, PDO)

Giriş

PHP, web geliştirme alanında yaygın olarak kullanılan bir sunucu tarafı programlama dilidir. MySQL ise popüler bir veritabanı yönetim sistemidir. PHP ve MySQL’in entegre edilmesi, dinamik web uygulamalarının geliştirilmesinde temel bir adımdır. Bu entegrasyon, veritabanı işlemleri için iki ana yöntem sağlar: MySQLi (MySQL Improved) ve PDO (PHP Data Objects). Her iki yöntem de veritabanına bağlanma, veri ekleme, güncelleme, silme ve sorgulama gibi işlemleri gerçekleştirmek için kullanılır.

MySQLi ile Entegrasyon

MySQLi, MySQL veritabanı ile etkileşimde bulunmak için geliştirilmiş bir PHP eklentisidir. MySQLi, hem nesne yönelimli hem de prosedürel bir yapıda kullanılabilir.

MySQLi ile Bağlantı Kurma

MySQLi ile bağlantı kurmak için öncelikle bir veritabanı bağlantı nesnesi oluşturulmalı ve bu nesne ile veritabanına bağlantı sağlanmalıdır. Aşağıda MySQLi ile nasıl bağlantı kurulacağına dair bir örnek bulunmaktadır:

“`php
$servername = “localhost”;
$username = “kullanici_adı”;
$password = “parola”;
$dbname = “veritabani_adi”;

// MySQLi ile bağlantı oluşturma
$conn = new mysqli($servername, $username, $password, $dbname);

// Bağlantıyı kontrol etme
if ($conn->connect_error) {
die(“Bağlantı hatası: ” . $conn->connect_error);
}
echo “Bağlantı başarılı”;
“`

Sorguların Gerçekleştirilmesi

Bağlantı sağlandıktan sonra, SQL sorguları hazırlayıp çalıştırmak mümkündür. Örnek olarak, basit bir SELECT sorgusu:

“`php
$sql = “SELECT id, ad, soyad FROM kullanicilar”;
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// Sonuçları çıkartma
while($row = $result->fetch_assoc()) {
echo “id: ” . $row[“id”]. ” – Ad: ” . $row[“ad”]. ” – Soyad: ” . $row[“soyad”]. “
“;
}
} else {
echo “0 sonuç”;
}
“`

Veri Ekleme ve Güncelleme

MySQLi ile veri eklemek veya güncellemek için INSERT ve UPDATE sorguları kullanılabilir:

“`php
// Veri ekleme
$sql = “INSERT INTO kullanicilar (ad, soyad) VALUES (‘Ali’, ‘Yılmaz’)”;
if ($conn->query($sql) === TRUE) {
echo “Yeni kayıt başarıyla oluşturuldu”;
} else {
echo “Hata: ” . $sql . “
” . $conn->error;
}

// Veri güncelleme
$sql = “UPDATE kullanicilar SET soyad=’Öztürk’ WHERE ad=’Ali'”;
if ($conn->query($sql) === TRUE) {
echo “Kayıt başarıyla güncellendi”;
} else {
echo “Hata: ” . $sql . “
” . $conn->error;
}
“`

Bağlantıyı Kapatma

İşlemler tamamlandıktan sonra bağlantının kapatılması önerilir:

“`php
$conn->close();
“`

PDO ile Entegrasyon

PDO, birden fazla veritabanı ile çalışabilen bir PHP eklentisidir. MySQL dahil olmak üzere birçok veritabanı sunucusunu destekler. PDO, nesne yönelimli bir yapıdadır ve güvenlik ve esneklik açısından pek çok avantaj sunar.

PDO ile Bağlantı Kurma

PDO ile bağlantı kurmak için aşağıdaki gibi bir yapı kullanılabilir:

“`php
$servername = “localhost”;
$username = “kullanici_adı”;
$password = “parola”;
$dbname = “veritabani_adi”;

try {
$conn = new PDO(“mysql:host=$servername;dbname=$dbname”, $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo “Bağlantı başarılı”;
} catch(PDOException $e) {
echo “Bağlantı hatası: ” . $e->getMessage();
}
“`

Sorguların Gerçekleştirilmesi

PDO kullanarak SQL sorguları hazırlamak ve çalıştırmak mümkündür. Örneğin, bir SELECT sorgusu ile verileri çekmek:

“`php
$stmt = $conn->prepare(“SELECT id, ad, soyad FROM kullanicilar”);
$stmt->execute();

$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
echo “id: ” . $row[“id”]. ” – Ad: ” . $row[“ad”]. ” – Soyad: ” . $row[“soyad”]. “
“;
}
“`

Veri Ekleme ve Güncelleme

PDO ile veri ekleme ve güncelleme işlemleri aşağıdaki gibi yapılabilir:

“`php
// Veri ekleme
$stmt = $conn->prepare(“INSERT INTO kullanicilar (ad, soyad) VALUES (:ad, :soyad)”);
$stmt->bindParam(‘:ad’, $ad);
$stmt->bindParam(‘:soyad’, $soyad);

$ad = “Ali”;
$soyad = “Yılmaz”;
$stmt->execute();
echo “Yeni kayıt başarıyla oluşturuldu”;

// Veri güncelleme
$stmt = $conn->prepare(“UPDATE kullanicilar SET soyad=:soyad WHERE ad=:ad”);
$stmt->bindParam(‘:ad’, $ad);
$stmt->bindParam(‘:soyad’, $soyad);

$ad = “Ali”;
$soyad = “Öztürk”;
$stmt->execute();
echo “Kayıt başarıyla güncellendi”;
“`

Bağlantıyı Kapatma

PDO bağlantısı otomatik olarak kapanır, ancak yeniden bağlantı açıldığında eski bağlantının kapatılmasını sağlamak için `$conn = null;` ifadesi kullanılabilir.

Sonuç

PHP ve MySQL entegrasyonu, dinamik web uygulamaları geliştirmek için temel bir yetenektir. MySQLi ve PDO, bu entegrasyonu sağlamak için iki farklı yöntemdir. MySQLi prosedürel ve nesne yönelimli bir yapı sunarken, PDO çoklu veritabanı desteği ve daha fazla güvenlik sağlar. Kullanılacak yöntem, projenin gereksinimlerine ve geliştiricinin tercihlerine bağlıdır. Her iki yöntem de, veritabanı işlemlerinin güvenli ve etkili bir şekilde gerçekleştirilmesine olanak tanır.

Önceki İçerik
Sonraki İçerik

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR