Запись - MySQLi ilə Bağlantı

MySQLi ilə Bağlantı

PHP ilə MySQL-ə bağlanmaq üçün əsas üsullar MySQLi və PDO (PHP Data s) ilə mümkündür. Hər ikisi etibarlıdır, lakin PDO daha çoxverişli hesab olunur, çünki o, fərqli verilənlər bazası sürücülərini dəstəkləyir. Aşağıda həm MySQLi, həm də PDO vasitəsilə MySQL ilə əlaqə qurma nümunələrini təqdim edirəm.


---

1. MySQLi ilə Bağlantı

Əsas Addımlar:

1. Verilənlər bazasına qoşulmaq üçün mysqli_connect funksiyasını istifadə edin.


2. Əgər bağlantı uğursuz olarsa, xəta mesajını göstərmək üçün die() funksiyasını çağırın.



Kod Nümunəsi:

<?php
// Verilənlər bazası məlumatları
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

// Bağlantı yaratmaq
$conn = mysqli_connect($servername, $username, $password, $dbname);

// Xətanı yoxlamaq
if (!$conn) {
die("Bağlantı xətası: " . mysqli_connect_error());
}

echo "Bağlantı uğurludur!";

// Bağlantını bağlamaq
mysqli_close($conn);
?>


---

2. PDO ilə Bağlantı

Əsas Addımlar:

1. PDO obyektini yaratmaq üçün new PDO ifadəsini istifadə edin.


2. Xətaları idarə etmək üçün try-catch blokundan istifadə edin.



Kod Nümunəsi:

<?php
// Verilənlər bazası məlumatları
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

try {
// Bağlantı yaratmaq
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);

// PDO error rejimini təyin edin
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

echo "Bağlantı uğurludur!";
} catch (PDOException $e) {
echo "Bağlantı xətası: " . $e->getMessage();
}

// Bağlantını avtomatik bağlamaq üçün heç bir əlavə əməliyyat tələb olunmur
?>


---

3. Verilənlər Bazası ilə Əməliyyatlar

Həm MySQLi, həm də PDO ilə məlumat əlavə etmək, silmək, yeniləmək və seçmək mümkündür.

Məlumat Seçmək (PDO ilə):

<?php
try {
$conn = new PDO("mysql:host=localhost;dbname=test", "root", "");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $conn->prepare("SELECT * FROM users");
$stmt->execute();

// Məlumatları əldə etmək
$nəticələr = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($nəticələr as $row) {
echo "Ad: " . $row['ad'] . " - Yaş: " . $row['yas'] . "<br>";
}
} catch (PDOException $e) {
echo "Xəta: " . $e->getMessage();
}
?>

Məlumat Əlavə Etmək (MySQLi ilə):

<?php
$conn = mysqli_connect("localhost", "root", "", "test");

if (!$conn) {
die("Bağlantı xətası: " . mysqli_connect_error());
}

$sql = "INSERT INTO users (ad, yas) VALUES ('Orxan', 25)";
if (mysqli_query($conn, $sql)) {
echo "Məlumat uğurla əlavə edildi!";
} else {
echo "Xəta: " . mysqli_error($conn);
}

mysqli_close($conn);
?>


---

4. Təhlükəsizlik və Tövsiyələr

SQL Injection qarşısını almaq üçün istifadəçi məlumatlarını hazırlamaq üçün prepared statements istifadə edin.

Xəta idarəetməsini düzgün qurmaq üçün try-catch və ya əlaqəli funksiyaları tətbiq edin.

Əlavə tədbir üçün, həmişə bağlantıları bağlayın.


Təhlükəsiz Sorgu (PDO ilə):

<?php
try {
$conn = new PDO("mysql:host=localhost;dbname=test", "root", "");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $conn->prepare("INSERT INTO users (ad, yas) VALUES (:ad, :yas)");
$stmt->bindParam(':ad', $ad);
$stmt->bindParam(':yas', $yas);

$ad = "Orxan";
$yas = 30;
$stmt->execute();

echo "Məlumat uğurla əlavə edildi!";
} catch (PDOException $e) {
echo "Xəta: " . $e->getMessage();
}
?>

Bu üsullarla MySQL ilə etibarlı və effektiv bir əlaqə qura bilərsiniz. Sualınız olsa, əlavə izah edə bilərəm.



Proqramlaşdırma
Rəylər 0
Hələ şərh yoxdur
Bağışlayın, şərh yazmaq sizin üçün əlçatan deyil
Ко всем записям

MobTop.az