• Sonuç bulunamadı

Veri giriş formu yapmak

N/A
N/A
Protected

Academic year: 2022

Share "Veri giriş formu yapmak"

Copied!
7
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Veri giriş formu yapmak

Bu işlem için DW'da iki seçeneğimiz var; bunlardan ilki formlarımızı kendimiz tasarlayıp daha sonra bu formun hangi veritabanı tablosuna hangi bilgiyi gireceğini belirtmek. İkinci seçenek ise DW'ın içerisindeki bir sihirbaz aracı ile bu form yaratma işlemini de DW'ın üzerine yıkmak. Ben ilk yöntemi yani el ile kayıt girme formları nasıl yapılıyor onun üzerinde duracağım. Diğerinin bundan çok da bir farkı yok zaten. Evet başlıyoruz;

Bu işlem için DW'da iki seçeneğimiz var; bunlardan ilki formlarımızı kendimiz tasarlayıp daha sonra bu formun hangi veritabanı tablosuna hangi bilgiyi gireceğini belirtmek. İkinci seçenek ise DW'ın içerisindeki bir sihirbaz aracı ile bu form yaratma işlemini de DW'ın üzerine yıkmak. Ben ilk yöntemi yani el ile kayıt girme formları nasıl yapılıyor onun üzerinde duracağım. Diğerinin bundan çok da bir farkı yok zaten. Evet başlıyoruz;

(2)

Kayıt giriş işlemleri için kullanacağımız form

Bu formu oluşturmak için neler yaptık kısaca bir özet geçelim. Öncelikle bir "Form" ekledik ve Properties paneli vasıtası ile

"Name" bölümüne "makale_ekle_form" yazıp "Method" kısmında ise "POST" olarak seçili olmasına özen gösterdik. "Action"

kısmına bir şey yazmadık.

Ardından şekildeki gibi bir tablo yaratıp biraz CSS ile tabloyu biçimlendirdikten sonra "makale_baslik" adında bir "Text field" yani metin alanı ekledik. Bunu takiben "makale_ozet" ve "makale_detay" isimli iki adet "Textarea" form bileşeni ekleyip kategorileri seçebilmemize olanak sağlayacak bir "List menu" yarattık ve adını "makale_kategori" olarak belirledik. Son olarak "Value"

değeri "Ekle" olan bir "Submit button" ekleyerek formumuzu yaratmış olduk.

Burada dikkatinizi çektiği üzere "makale_kategori" isimli liste menümüz için herhangi bir seçenek eklemedik. Çünkü veritabanından bir kayıt dizisi (recordset) ile çektirdiğimiz kategori bilgilerini yazdırarak dinamik bir liste menü yaratacağız. Öncelikle

veritabanındaki kategorileri çeken basit bir kayıt dizisi yaratıyoruz.

Kategorileri çektiren bir kayıt dizisi tanımlıyoruz

Ardından eklediğimiz liste menümüzün üzerine bir kez tıklayarak onu seçiyor ve Properties panelinden "Dynamic..." düğmesine tıklıyoruz ve bu liste menüsünü dinamik bir menü haline getirmeye başlıyoruz.

(3)

Liste menüsünü seçip Properties panelinden Dynamic düğmesine tıklıyoruz

Açılan dinamik liste menü iletişim penceresinden "Menu" kısmında biraz önce eklediğimiz liste menünün seçili olduğuna dikkat ediyoruz. "Static options" bölümüne isterseniz "Label" değeri "Bir kategori seçiniz" olan boş değerli bir statik seçenek ekleyebilirsiniz fakat şart değil.

"Options from Recordset" seçeneğinden ise biraz önce kategoriler için tanımladığınız kayıt dizisini seçiyor ve "Value" kısmı için

"id", "Label" kısmı için "baslik" alanlarını seçerek "Select value equal to" seçeneğini boş bırakarak dinamik menümüzü yapılandırmış oluyoruz. Bu yaptığımız yapılandırma çerçevesinde kategoriler için tanımladığımız kayıt dizesi ile veritabanımızdaki kategoriler bir liste menüsünün içerisine yazdırılacak ve makale ekleme işlemi sırasında listeden bir kategoriyi rahatlıkla seçmemize olanak tanıyacaktır.

Dinamik liste menüsü iletişim penceresi

Bu tür dinamik form öğelerini yarattığınız veri giriş ve güncelleme formlarında kullanarak güçlü ve esnek yönetim işlemleri

gerçekleştirebilirsiniz. Insert / Application Objects / Dynamic Data menüsü ya da Insert panel altındaki "Application" sekmesi altında yer alan "Dynamic Data" düğmesi ile hangi dinamik objelere ulaşabildiğinizi görebilir ve kullanabilirsiniz.

Dinamik objeler ile formlarınızı zenginleştirebilirsiniz.

Veri giriş formumuz hazır olduğuna göre bu forma girilen verileri veritabanına girme işlemine başlayabiliriz.

Bilgilerin veritabanına girişi işlemi

(4)

Server Behaviors menüsünden Insert Record seçeneğine tıklıyoruz Açılan kayıt girişi iletişim penceresinden ilgili yapılandırmaları yaparak kayıt girişi işlemlerini yapabiliriz.

Kayıt ekleme iletişim penceresi

Submit values from: Bu açılır menüden bilgi girişini yaptıracağımız formu seçiyoruz. Sayfada birden fazla form olduğu durumlarda daha çok anlam kazanan bu menüden hangi formu seçtiğimize dikkat etmeliyiz.

Connection: Hangi veritabanı bağlantısını kullanarak veri girişinin yapılacağını seçiyoruz.

Columns: Veri girişi yaptığımız ilgili tablonun alanlarını gösteren bu listeden bir alan seçip listenin altında yer alan "Value"

menüsünden sayfadaki form elemanlarından bu veritabanı alanına girilecek veriyi içeren elemanı seçiyoruz. "Submit as"

seçeneği ise girilen veritürünü belirtiyor. Sayı (integer), metin (Text) ya da tarih (date) gibi seçeneklerden alana uygun olanı seçiyoruz.

After inserting go to: bölümüne veri giriş işlemi tamamlandıktan sonra kullanıcının yönlendirileceği sayfayı giriyoruz (Örn.

islem_basarili.php gibi).

Veri giriş işlemi için ilgili ayarlar bu şekilde yaptıktan sonra "OK" diyerek işlemi sonlandırabiliriz. İşlemi bitirdiğimizde formumuz açık mavi bir biçimde işaretlenerek dinamik veri girişinin yapıldığı bir form olduğu vurgulanacaktır. Bu aşamadan sonra hiçbir form elemanına müdahale etmemeye özen gösteriniz. Zira veri giriş işlemleri değişen parametreler doğrultusunda sekteye uğrayabilir.

(5)

İşlem tamamlandıktan sonra formun DW içerisindeki görünümü

Teorik olarak tarih alanına kaydın eklendiği andaki tarihi girmemiz gerekiyor. Bu işlemi bir metin alanı (text field) ya da gizli alan (hidden field) içerisine o anki tarih zaman bilgisini yazdırarak veritabanına girilmesini sağlayabilirsiniz.

Özellikle site yöneticilerinin inisiyatifinde olmayan veri girişlerinde (forum mesajı ve yorum gibi) kullanıcılarınızın formu eksiksiz olarak doldurmaları veya alanlara doğru bilgiler girip girmediklerini kontrol etmemiz gerekmektedir. Peki form geçerlilik kontrollerini nasıl yapacağız. Bunun için DW içerisinde Behaviors paneli altında yer alan "Validate Form" özelliğini kullanacağız.

Behaviors panel menüsünden Validate Form seçeneğine tıklıyoruz

(6)

Form geçerleme iletişim penceresi

Bu işlemi daha ayrıntılı olarak yapan eklentileri sitemiz dosya arşivinden temin edebilirsiniz. Fakat yeri gelmişken bir noktaya açıklık kavuşturmakta fayda var; bu tür girdi kontrol işlemleri sadece kullanıcı tarafında kontrol yaparlar. Fakat ziyaretçinin tarayıcısı JavaScript çalıştırmıyor ise ya da JavaScript çalıştırma özelliğini devre dışı bıraktı ise bu tür form geçerleme işlemleri çalışmayacaktır. Bir diğer ihtimal de kötü niyetli kullanıcıların bu engeli oldukça kolay aşabilecekleri gerçeğidir.

Her ne olursa olsun bu tür veri geçerliliği kontrolleri kullanıcı tarafının yanı sıra sunucu taraflı diller ile sunucu tarafında da kontrol edilmeli böylece girilen (ya da girilmeyen) bilgiler çerçevesinde çeşitli hata mesajları ile ziyaretçinin veri girişini engellenmelidir.

DW içerisinde henüz böyle bir kontrol mevcut değil. DW'ın en büyük eksiklerinden olan bu açığı bir çok firma tarafından hazırlanan eklentiler ile kapatmak mümkün. Fakat bu tür eklentilerin ücretli olmaları da kullanımlarını kısıtlayan en önemli etmen. DW ile dinamik bir uygulama yaparken bu özellikleri de göz önünde bulundurmanız ve kendi çözümlerinizi bu çerçevede yapmanızı tavsiye ederek bu konuya da açıklık getirmiş olalım.

PHP MySQL sunucu modeli ile çalışıyorsanız eğer veritabanı olarak MySQL 4.1.1 ve sonrası bir sürüm kullanıyor iseniz;

sayfalarda Türkçe karakter problemi yaşamamak için collation bilgisini sayfalarınıza eklemeniz gerekmektedir. Bu işlem için "Set Collation" eklentisini kullanabilirsiniz. Aynı şekilde kod görünümüne geçip sayfanın en başına Insert / PHP Objects / PHP Page Encoding menüsü ile sayfaya girdi ve çıktılar için kodlama türü belirtmeleri gerekmektedir.

Aynı şekilde ASP sunucu modeli ile çalışıyorsanız sayfanın başında "CODEPAGE" belirtiminin yapılmış olduğundan emin olmalısınız.

Sihirbazı kullanarak kayıt giriş sayfası yapmak

Bu anlattığımız işlemleri çok daha pratik bir biçimde yapmamıza olanak sağlayan sihirbaz ile veri giriş sayfası yapmak aslında diğer yöntemden çok da farklı değil. Bunun için yeni bir doküman oluşturup kaydediyoruz ve kategorileri listelettiğimiz bir kayıt dizisi ekliyoruz. Ardından Insert / Application Objects / Insert Record / Insert Record Form Wizard ile sihirbazı başlatıyoruz.

Kayıt ekleme formu sihirbazı

Sihirbaz iletişim penceresinde ilgili bağlantı ve tabloyu seçtikten sonra "Form Fields" bölümünde kayıt ekleme formunda olmasını istediğiniz elemanları yönetebilirsiniz. Örneğin "id" alanı için bir form elemanına ihtiyacımız olmadığından bu seçeneği (-)

düğmesine tıklayarak kaldırabiliyoruz.

"Label" kısmına kullanıcıların göreceği ara yüzdeki isimi girip "Display as" menüsünden bu elemanın ne tür bir form bileşeni olarak sayfaya eklenmesini istediğimizi seçiyoruz. "Submit as" seçeneği ise bu girilen verinin veritabanına ne tür bir bilgi olarak girileceğini belirtiyor. "Default value" kısmı da bu form bileşenine varsayılan olarak girilmesini istediğiniz değeri belirtiyor.

(7)

Örneğin tarih girdileri için gizli bir alan yaratıp varsayılan değer olarak <?php echo date("Y-m-j H:i:s"); ?> verdiğinizde kaydın o an girildiği tarih bilgisini veritabanına girmiş olursunuz.

İlgili ayarları yapıp "OK" dediğinizde kayıt ekleme formu ve sunucu modeli uygulaması sayfaya otomatik olarak eklenecek böylece oldukça hızlı bir biçimde veri giriş formları hazırlayabileceksiniz. Form ile ilgili düzenlemeleri daha sonra DW içerisinde yapabilirsiniz fakat form elemanlarının isimlerini değiştirmemeye özen göstermelisiniz.

Veri giriş işlemleri bu şekilde. Kendi bilgisayarınızda farklı örnekler yaparak kendinizi geliştirebilir ve sistemin işleyişini daha iyi kavrayabilirsiniz.

Kaynak www.dw.gen.tr/

Referanslar

Benzer Belgeler

Diline göre Türkçe, İngilizce, vs;bağlantı türüne göre PS/2, USB ve kablosuz; tusların yerlesimine göre ise Q (QWERTY) ve F gibi çesitleri örnek olarak

Eskiden yalnızca özel kalem ile çizdikleri için adları çizici

Bir dosyanın tüm parçaları birer extents olarak adlandırılır E er disk üzerinde yeterince yanyana bo alan varsa dosya tek bir extent olarak olu turulur Dosya yöneticisi yeni

Yukarıda sözünü ettiğimiz, kişi- nin kendi hakkında konuşmasının ve söylediklerinin bir başkası tara- fından duyulmasının verdiği haz bir yana, sosyal medyada

 Birey belli bir zaman ve yerde öğrendiği bilgiyi, istediği yer ve zamanda.. uygulama

gördürülmesinde hizmet, (a)kamu idaresi tarafından doğrudan doğruya görülebilir (b) hizmetten sorumlu kamu idaresinin kurduğu diğer kamu tüzel kişisi

Veri sağlayıcılarını sadece bir veri kaynağı için yapılan özel veri sağlayıcıları ve bir çok veri kaynağına hitap eden genel veri sağlayıcıları olarak 2'ye

Polivka ile evvelce 688 kadem açıklık- taki başka bir betonarme köprüyü başarı ile inşa etmiş olan köprü mühendisi Eduardo Torroja, Adı geçen ça- lışma esnasında