PHP MySQL'e Bağlanın PHP MySQL'e Bağlanın

Gönderen: Kaan   Tarih: 2018-10-10 17:57 Kategori: php5egitim | Okundu: 272

PHP'nin önceki sürümlerinde MySQL uzantısı kullanılmıştır. Ancak, bu uzantı 2012 yılında kaldırılmıştır.

PHP 5 ve üstü bir MySQL veritabanı ile çalışabilir:

  • MySQLi uzantısı ("i" gelişmiş anlamına gelir)
  • PDO (PHP Veri Nesneleri)

 

MySQLi veya PDO Kullanmalı mıyım?

Kısa bir cevaba ihtiyacınız varsa, "Ne istersen" olur.

Hem MySQLi hem de PDO'nun avantajları var:

PDO 12 farklı veritabanı sistemi üzerinde çalışacak, MySQLi ise sadece MySQL veritabanlarıyla çalışacak.

Yani, projenizi başka bir veritabanı kullanacaksanız, PDO işlemi kolaylaştırır. Sadece bağlantı dizesini ve birkaç sorguyu değiştirmeniz gerekir. MySQLi ile, tüm kodu yeniden yazmanız gerekir - sorguları dahil.

Her ikisi de nesne yönelimli, ancak MySQLi ayrıca bir prosedür API'sı sunuyor.

Her ikisi de hazırlanan ifadeleri destekler. Hazırlanan Deyimler SQL enjeksiyonundan korur ve web uygulaması güvenliği için çok önemlidir.

 

MySQLi ve PDO Sözdiziminde MySQL Örnekleri

Bu ve sonraki bölümlerde PHP ve MySQL ile çalışmanın üç yolunu gösteriyoruz:

  • MySQLi (nesne yönelimli)
  • MySQLi (prosedürel)
  • PDO

 

MySQLi Kurulumu

Linux ve Windows için: php5 mysql paketi yüklendiğinde MySQLi uzantısı çoğu durumda otomatik olarak yüklenir.

Kurulum detayları için şu adrese gidin: http://php.net/manual/en/mysqli.installation.php

 

PDO Kurulumu

Kurulum detayları için şu adrese gidin: http://php.net/manual/en/pdo.installation.php

 

MySQL Bağlantısını Aç

MySQL veritabanındaki verilere erişebilmemiz için, sunucuya bağlanabilmemiz gerekir:

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
echo "Connected successfully";
?>

 

PHP, inanılmaz ve popüler bir dildir!

Yukarıdaki nesne yönelimli örnekle ilgili not: $connect_error, PHP 5.2.9 ve 5.3.0'a kadar . 5.2.9 ve 5.3.0 öncesi PHP sürümleri ile uyumluluk sağlamanız gerekiyorsa, aşağıdaki kodu kullanın: 
 

// Bağlantıyı kontrol 
if (mysqli_connect_error ()) { 
    die ("Veritabanı bağlantısı başarısız oldu". Mysqli_connect_error ()); 
}

Örnek (MySQLi Procedural)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// Create connection
$conn = mysqli_connect($servername, $username, $password);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

Örnek (PDO)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

try {
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
    }
catch(PDOException $e)
    {
    echo "Connection failed: " . $e->getMessage();
    }
?>

Yukarıdaki PDO örneğinde de bir veritabanı (myDB) belirlediğimize dikkat edin. PDO, bağlanmak için geçerli bir veritabanı gerektirir. Hiçbir veritabanı belirtilmemişse, bir istisna atılır.

İpucu: PDO'nun büyük bir yararı, veritabanı sorgularımızda oluşabilecek sorunları gidermek için bir istisna sınıfına sahip olmasıdır. Deneme {} bloğu içinde bir istisna atılırsa, betik yürütmeyi durdurur ve doğrudan ilk yakalama () {} bloğuna akar.

 

Bağlantıyı Kapat

Komut bittiğinde bağlantı otomatik olarak kapanacaktır. Bağlantıyı daha önce kapatmak için aşağıdakileri kullanın:

Örnek (MySQLi Nesne Yönelimli)

$conn->close();

Örnek (MySQLi Procedural)

mysqli_close($conn);

Örnek (PDO)

$conn = null;

 



Yorumlar: (0)

Henüz yorum yapılmamıştır.

Yorum:

CAPTCHA