Skip to the content.

PHP ile MySQL Kullanımı

CRUD İşlemleri

SQL KOMUTU İLE TABLONUN OLUŞTURULMASI

Aşağıdaki komutları adminer ile MySQL üzerinde çalıştırınız.

DROP TABLE IF EXISTS `users`;

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `email` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;

INSERT INTO `users` (`id`, `name`, `email`) VALUES
  (1,'Ahmet Yılmaz','ahmet@gmail.com'),
  (2,'Veysel Furkan','furkan@gmail.com');

VERİTABANI BAĞLANTISI - Database Connection

$servername = "localhost";
$username   = "root";
$password   = "root";
$dbname     = "ORNEKLER";

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

KAYIT LİSTELEME - SELECT/READ

$SORGU = $DB->prepare("SELECT id, name, email FROM users");
$SORGU->execute();
$users = $SORGU->fetchAll(PDO::FETCH_ASSOC);
//echo '<pre>'; print_r($users);

foreach($users as $user) {
    echo " {$user['id']} : {$user['name']}, {$user['email']} <br>";
}

KAYIT EKLEME - CREATE/INSERT

$name  = "Nuri";
$email = "nuri@hotmail.com";

$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";
$SORGU = $DB->prepare($sql);

$SORGU->bindParam(':name', $name);
$SORGU->bindParam(':email', $email);

$SORGU->execute();
echo "User created";

KAYIT GÜNCELLEME - UPDATE

$name  = "Nuri Akman";
$email = "nuri@gmail.com";
$id    = 4;

$sql = "UPDATE users SET name = :name, email = :email WHERE id = :id";
$SORGU = $DB->prepare($sql);

$SORGU->bindParam(':name', $name);
$SORGU->bindParam(':email', $email);
$SORGU->bindParam(':id', $id);

$SORGU->execute();
echo "User updated";

KAYIT SİLME - DELETE

$id    = 4;

$sql = "DELETE FROM users WHERE id = :id";
$SORGU = $DB->prepare($sql);

$SORGU->bindParam(':id', $id);

$SORGU->execute();
echo "User deleted";

İlave Bilgiler

PDO fetchAll Komutu Kullanım Şekilleri

$servername  = "localhost";
$username    = "root";
$password    = "root";
$dbname      = "ORNEKLER";

try  {
  $DB  =  new  PDO("mysql:host=$servername;dbname=$dbname",  $username,  $password);
  $DB->setAttribute(PDO::ATTR_ERRMODE,  PDO::ERRMODE_EXCEPTION);
  $DB->exec("SET names utf8  "); // utf8mb4
  $DB->exec("SET sql_mode='' ");
  // echo "Connected successfully";
}  catch(PDOException  $e)  {
  echo  "Connection failed: "  .  $e->getMessage();
  die();
}

$stmt1  =  $DB->query('SELECT id, name FROM users');
$stmt2  =  $DB->query('SELECT id, name FROM users');
$stmt3  =  $DB->query('SELECT id, name FROM users');
$stmt4  =  $DB->query('SELECT id, name FROM users');

$cevap1 = $stmt1->fetchAll(PDO::FETCH_KEY_PAIR);
$cevap2 = $stmt2->fetchAll(PDO::FETCH_ASSOC);
$cevap3 = $stmt3->fetchAll();
$cevap4 = $stmt4->fetchAll(PDO::FETCH_COLUMN, 1); // İlk kolon 0'dan başlar

print_r($cevap1);
print_r($cevap2);
print_r($cevap3);
print_r($cevap4);

Bu komutların ekran çıktısı:

Array
(
  [1] => nuri
  [2] => osman
  [3] => kemal
)


Array
(
  [0] => Array
      (
          [id] => 1
          [name] => nuri
      )


  [1] => Array
      (
          [id] => 2
          [name] => osman
      )

  [2] => Array
      (
          [id] => 3
          [name] => kemal
      )

  )


Array
(
    [0] => Array
        (
            [id] => 1
            [0] => 1
            [name] => nuri
            [1] => nuri
        )

    [1] => Array
        (
            [id] => 2
            [0] => 2
            [name] => osman
            [1] => osman
        )

    [2] => Array
        (
            [id] => 3
            [0] => 3
            [name] => kemal
            [1] => kemal
        )

)


Array
(
  [0] => nuri
  [1] => osman
  [2] => kemal
)