PhpDili Özgün PHP Dersleri

Haberdar Olun

Yazılan yazılardan ilk siz haberdar olun, yeni yazılar e-postanıza gönderilsin.

Related Sponsors

Form aracılığıyla veritabanına kayıt ekleme

26 Şubat 2010 tarihinde yazılmıştır.
Bu Yazıyı Paylaş :
Twitter Facebook Friendfeed Google Sık Kullanılanlar Yahoo Sık Kullanılanlar LinkedIn Blogger Digg Stumbleupon Sık Kullanılanlar E-Posta More

PHP ile veritabanı uygulamalarında, genel olarak yapılacak işlemler. Veritabanına veri kaydetme, veri listeleme, veri düzenleme ve veri silme işlemleridir. Bu işlemlerden ilk olarak veritabanına veri kaydetme konusunu inceleyeceğiz. Sonraki yazılarımızda, sırasıyla veri listeleme, düzenleme ve silme işlemleriyle devam ederiz.

Öncelikle, bir forma inputlar aracılığıyla girilmiş olan bilgileri, post metoduyla diğer bir sayfaya aktarıp, aktardığımız sayfada veritabanı bağlantısı olduğu varsayılarak kayıt işlemi yapılacaktır.

Kayıt için gerekli olan örnek bir form oluşturalım:

<form action="kaydet.php" method="post">
<label>İsim :<input type="text" name="isim" id="isim" /></label>
<label>Soyisim :<input type="text" name="soyisim" id="soyisim" /></label>
<label> <input type="submit" name="button" id="button" value="Gönder" /></label>
</form>


[ad code=1 align=center]
Üstte gördüğümüz gibi, kaydet.php sayfasına post edilen, isim ve soyisim olarak adlandırılmış iki tane input ve formu submit etmemizi sağlayan bir buton bulunmaktadır. Burda önemli olan nokta, inputların ‘name’ değerleridir.

Kayıt yapacağımız tablo yapımız;

CREATE TABLE `test`.`defter` (
`defter_id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`defter_isim` VARCHAR( 100 ) NOT NULL ,
`defter_soyisim` VARCHAR( 100 ) NOT NULL ,
PRIMARY KEY ( `defter_id` ) ,
UNIQUE (
`defter_id`
)
) ENGINE = MYISAM CHARACTER SET latin5 COLLATE latin5_turkish_ci;

Formumuz ve tablomuz hazır olduğuna göre, kaydet.php dosyasına geçiyoruz;

/*
Veritabanı bağlantı kodları burada oluyor.
Bağlantı için ayrıntılı bilgi : http://www.phpdili.com/mysql/php-ile-mysql-baglantisi-kurmak.html
*/

//Form post metoduyla gönderilen bilgileri alıp değişkenlere atayalım.
$ad = $_POST['isim'];
$soyad = $_POST['soyisim'];

//Veritabanında bulunan 'defter' isimli tablonun 'defter_isim' ve 'defter_soyisim' alanlarına kayıt edelim.
$kaydet = mysql_query("insert into defter (defter_id, defter_isim, defter_soyisim) values (NULL, '$ad', '$soyad')") or die("Hata: kayıt işlemi gerçekleşemedi.");

Tüm veritabanına kayıt işlemleri, genel olarak yukarda bahsedilen mantıkta gerçekleştirilmektedir. Yukarda oluşturulan değişkenleri farklı fonksiyonlardan geçirerek, güvenlik açısından doğabilecek sıkıntıları engelleyebiliriz.

Sıradaki Konu :
Veritabanına eklediğimiz kayıtları listeleme

Benzer Yazılar:

  1. Veritabanındaki Kayıtları Düzenleme
  2. Veritabanındaki Kayıtları Listeleme
  3. Veritabanından Kayıt Silme
  4. jQuery Form Kontrolü
  5. PHP ile Form Değişkenlerine Erişim

“Form aracılığıyla veritabanına kayıt ekleme”Yazısına Ait Yorumlar

  1. [...] Bu Yazıyı Paylaş : PHP ile MySQL veritabanına veri kaydetme, veri listeleme, veri düzenleme işlemlerinden sonra sıra sakladığımız verileri silme [...]

  2. Mubi diyor ki:

    Anlatimlariniz ve ornekleriniz MUKEMMEL. Bilgisayar bilgisi olmayan biri bile bununla PHP programcisi olabilir. Ancak, ben de diger bir kac yorumcu gibi siralamadan yana sikayetciyim.

  3. Mubi diyor ki:

    Mesela bir ornek programda su sekilde baslanabilir:
    1- Giris (Formlar)
    (yukarda 3 ayri bolumde verilen bilgiler/aciklamalar var ama mesela "örnek bir form oluşturalım: " denmis ve 2 ayri kod verilmis ancak bunlari kaydetmemiz gerekli mi degil mi belirtilmeden hemen baska bir koda gecilmis ve kaydet.php dosyasina gecilmis)
    2- Gelisme
    a) Kaydet
    b) Duzenle
    c) Sil
    d) Hesapla(Formul hesap alani)
    3- Sonuc/Cikti
    Ornek vereyim
    1-Form Kismi:
    Urun No (autoNo):
    Barcode No :
    Urun ismi:
    Urun Foto:
    Urun Olculeri (Kg, Cm vs):
    Urun Fiyati:
    2- Bur urunler uzerinde duzenleme, ekleme ve silme yapilabilecek
    3- Cikti Kismi:
    Siralama ihtimalleri (isme gore, numaraya gore vs)
    Urun No (autoNo):
    Barcode No :
    Urun ismi:
    Urun Foto:
    Urun Olculeri (Kg, Cm vs):
    Urun Fiyati:
    olarak yayinlanabilecek.

  4. Mubi diyor ki:

    Ancak burda urunleri ekleme ve duzenleme ve yazdirma ya da yayinlama asamasina getirecek bir programlama ornegi devamlansa cok daha guzel olur dusuncesindeyim ki bir cok programci adayi icin de hem egitici hem de tamamlayici olur.

    Ancak verdiginiz orneklerde sadece belki kendi acemiligimizden olsa gerek mi bilmiyorum baglayicilik yok veya biz/ben karistiriyorum.
    Kolay gelsin cok guzel, siralamayi karistirmazsam ansizin bir PHP programcisi olarak karsiniza cikabilirim :)

  5. ismet diyor ki:

    CREATE TABLE `test`.`defter` (
    `defter_id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
    `defter_isim` VARCHAR( 100 ) NOT NULL ,
    `defter_soyisim` VARCHAR( 100 ) NOT NULL ,
    PRIMARY KEY ( `defter_id` ) ,
    UNIQUE (
    `defter_id`
    )
    ) ENGINE = MYISAM CHARACTER SET latin5 COLLATE latin5_turkish_ci;

    Bu kodları phpmyadminde oluşturduğum db nin içinde SQL bölümüne yapıştırıyorum ve git dediğimde şu hatayı alıyorum

    #1050 – Table 'defter' already exists

    neyi yanlış yapıyorum acaba veri tabanımda bu şekilde pn_6446178_test free bir host kullanıyorum. Deneme amaçlı

    • phpdili diyor ki:

      Table 'defter' already exists : defter isimli bir tablo bulunduğu için böyle bir uyarı alıyorsunuz. Aynı isme sahip 2 tablo oluşturamazsınız.

  6. ayse aysegul diyor ki:

    veritabanına resim ekleyip görüntülemeyi nasıl yapabilirm?

    • phpdili diyor ki:

      Ekleyeceğiniz resmin ismini veritabanına yazdırıp, sonra o isme sahip resmi html etiketleriyle gösterebilirsiniz. Mantık tamamiyle bu yöndedir.

  7. Sena diyor ki:

    yorumlanabilir bir site hazırlayıp o yorumlarında yorum yapılan sayfanın altında görünmesini istiyorum aynı sizin sayfanızda olduğu gibi. yukarıda ki kodlar sadece veri tabanına bilgileri kayıt etmeyi sağlıyor. o yorumların ekranda görünmesi için gerekli kodları yazarmısınız ? yardımcı olursanız sevinirim…

Leave a Reply