PHP MySQL Veri Ekleme

PHP ile MySQL veritabanına/tabloya güvenli bir şekilde veri ekleme ve veri kaydetme işlemleri ile ilgili bilgiler yer almaktadır.

Veri ekleme genellikle kullanıcıdan alınan bilgilerin veritabanına kayıt edilmesi ile olmaktadır.

Veri ekleme ve kaydetme sırasında kullanıcının yanlış/hatalı veri girmesi istenmeyen durumların ortaya çıkmasına neden olur.

Formun hazırlanması

Verilerin düzgün olarak girilmesi için HTML5 input Tipleri ve HTML5 input Özellikleri yazımda belirttiğim yenilikleri kullanmak faydalı olacaktır.

<form action="" method="post">
    Adınız:<br />
    <input type="text" name="adi" required="required" /><br />
    Soyadınız:<br />
    <input type="text" name="soyadi" required="required" /><br />
    E-posta Adresiniz:<br />
    <input type="email" name="eposta" required="required" />
    <input type="submit" value="Kaydet" />
</form>

Veri ekleme işlemi için gerekli olan görselliği oluşturduktan sonra PHP ile gönderilen verilerin kontrol edilmesi ve filtrelenmesi faydalı olacaktır.

Filtre ve kontrollerin yapılması

PHP form kontrolü ve verilerin filtrelenmesi;<?php

if (isset($_POST['adi'], $_POST['soyadi'], $_POST['eposta'])) {

    $adi = trim(filter_input(INPUT_POST, 'adi', FILTER_SANITIZE_STRING));
    $soyadi = trim(filter_input(INPUT_POST, 'soyadi', FILTER_SANITIZE_STRING));
    $eposta = trim(filter_input(INPUT_POST, 'eposta', FILTER_SANITIZE_EMAIL));

    if (empty($adi) || empty($soyadi) || empty($eposta)) {
        die("<p>Lütfen formu eksiksiz doldurun!</p>");
    }

    if (!filter_var($eposta, FILTER_VALIDATE_EMAIL)) {
        die("<p>Lütfen geçerli bir e-posta adresin girin!</p>");
    }

    echo "PHP MySQL veri ekleme işlemi";
}

?>

Gerekli kontrol ve filtrelemenin ardından PHP MySQL Bağlantısı ve PHP MySQL Sorgulama yazılarındaki bilgilerden faydalanarak MySQL bağlantı ve ön hazırlıklı sorgu (prepare) işlemini yapabiliriz.

Verilerin kaydedilmesi

PHP MySQL veri ekleme kodları;<?php

if (isset($_POST['adi'], $_POST['soyadi'], $_POST['eposta'])) {

    $adi = trim(filter_input(INPUT_POST, 'adi', FILTER_SANITIZE_STRING));
    $soyadi = trim(filter_input(INPUT_POST, 'soyadi', FILTER_SANITIZE_STRING));
    $eposta = trim(filter_input(INPUT_POST, 'eposta', FILTER_SANITIZE_EMAIL));

    if (empty($adi) || empty($soyadi) || empty($eposta)) {
        die("<p>Lütfen formu eksiksiz doldurun!</p>");
    }

    if (!filter_var($eposta, FILTER_VALIDATE_EMAIL)) {
        die("<p>Lütfen geçerli bir e-posta adresin girin!</p>");
    }

    $baglanti = new mysqli("localhost", "root", "", "kisi");

    if ($baglanti->connect_errno > 0) {
        die("<b>Bağlantı Hatası:</b> " . $baglanti->connect_error);
    }

    $baglanti->set_charset("utf8");

    $sorgu = $baglanti->prepare("INSERT INTO kisiler(kisi_adi, kisi_soyadi, kisi_eposta) VALUES(?, ?, ?)");

    $sorgu->bind_param('sss', $adi, $soyadi, $eposta);
    $sorgu->execute();

    if ($baglanti->errno > 0) {
        die("<b>Sorgu Hatası:</b> " . $baglanti->error);
    }

    echo "<p>Bilgiler başarılı bir şekilde kaydedildi.</p>";

    $sorgu->close();
    $baglanti->close();
}

?>

PHP ile MySQL veri ekleme ve kaydetme işlemi

  • formun hazırlanması (veriler kullanıcıdan alınacaksa),
  • gerekli kontrollerin ve filtrelemenin yapılması (veriler kullanıcıdan alınacaksa),
  • bağlantının yapılması ve sorgunun (insert into) hazırlanması

adımları ile yapılır.

PHP ile MySQL veri kaydetme işlemi için SQL insert into kullanımını öğrenmek faydalı olacaktır.

PHP MySQL Derslerine buradan ulaşabilirsiniz…

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!