PHP’de Veritabanı ve SQL Kavramları

PHP, veritabanı işlemleri için çeşitli fonksiyonlar sunar. En yaygın olarak kullanılan veritabanı yönetim sistemi MySQL’dir ve PHP ile MySQL arasında veri alışverişi yapmak için MySQLi veya PDO (PHP Data Objects) extension kullanılabilir.

MySQLi kullanarak veritabanına bağlanma ve sorgu çalıştırma örneği:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

// veritabanına bağlan
$conn = new mysqli($servername, $username, $password, $dbname);

// bağlantı kontrol et
if ($conn->connect_error) {
    die("Bağlantı hatası: " . $conn->connect_error);
} 

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // verileri dizi şeklinde çek
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 sonuç.";
}
$conn->close();
?>

Bu örnekte, veritabanına bağlanmak için MySQLi kullanılmıştır ve veritabanındaki ‘MyGuests’ tablosundaki ‘id’, ‘firstname’ ve ‘lastname’ sütunlarındaki veriler çekilmiştir.

PDO kullanarak veritabanına bağlanma ve sorgu çalıştırma örneği:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // hata modunu ayarla
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests"); 
    $stmt->execute();

    // set the resulting array to associative
    $result = $stmt->setFetchMode(PDO::FETCH_ASSOC); 
    foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll)) as $k=>$v) {
echo $v;
}
}
catch(PDOException $e) {
echo "Bağlantı hatası: " . $e->getMessage();
}
$conn = null;

?>

Bu örnekte, PDO kullanılarak veritabanına bağlanmıştır ve ‘MyGuests’ tablosundaki ‘id’, ‘firstname’ ve ‘lastname’ sütunlarındaki veriler çekilmiştir. PDO kullanımı daha esnek ve güvenlidir, çünkü PDO, veritabanı sürücüleri arasında kolayca geçiş yapmanızı sağlar. Veritabanı işlemleri, sadece verileri çekmekle sınırlı değildir, aynı zamanda verileri eklemek, güncellemek veya silmek de mümkündür.

Bu işlemleri gerçekleştirmek için INSERT, UPDATE ve DELETE SQL sorguları kullanabilirsiniz. Veritabanı işlemleri sadece MySQL ile sınırlı değildir, aynı zamanda diğer veritabanı yönetim sistemleri (Oracle, SQL Server, PostgreSQL, vb.) ile de çalışabilirsiniz. Ancak, veritabanı yönetim sistemi farklı olduğunda, kullanacağınız SQL sorguları ve PHP fonksiyonları değişebilir.

Photo of author

Bilir Kişi

"Takdir ediliyorsanız değil taklit ediliyorsanız başarmışsınız demektir." - Einstein Profesyonel işbirlikleriniz için bilirkisi[at]webdeyazilim[.]com adresime mail gönderebilirsiniz.

Yorum yapın