|
|
#1 (permalink) |
|
Üyelik Tarihi: 21.02.2001
Yer: İstanbul
Yaş: 38
Mesaj: 22
|
Bir form oluşturmak istiyorum. Ama bu formu şu özelliklerde yapmak istiyorum. 1. Formu bir kere dolduran kişinin karşısına sonraki gelişlerinde form çıkmasını istemiyorum. Bunu nelerle nasıl gerçekleştirebilirim? 2. Yaptığım örnek formda dataları bir text dosyasına yazdırıyorum. Fakat bu dosya erişilebilir bir dosya olduğundan pek güvenli değil. Nasıl yapılabilir (kendi root directory'si haricinde başka bir yere link vermek haricinde) ve ben bu dataları SQL server'a atabilir miyim? 3. Kesinlikle doldurulması gereken alanları doldurmadığında kullanıcının karşına bir mesaj nasıl çıkartırım? Amacım öncelikle mantığının kavranması ve farklı çözümleri öğrenmek. Yardımcı olursanız sevinirm. Teşekkürler...
__________________
"sevgi ve bilgi paylaştikça çoğalır" |
|
|
|
|
|
#2 (permalink) |
|
Üyelik Tarihi: 14.07.2000
Yer: Istanbul-Turkey
Yaş: 28
Mesaj: 1,061
|
Cookie İle
1-)Cookie Kullanımı ile ilgili http://evcilasp.mucit.gen.tr/home/makale.asp?id=18
e göz atabilirsin. 2-)Text dosyasına başkalarının erişmemesi için permission değerlerini düzenlemelisin. Sanırım NT sunucu kullanıyorsun. Permission (izin) ayarları için hosting firmanın sağladığı konsolu kullanabilirsin. Bundan başka form'dan gelen bilgileri elbette MS SQL 'e iletmen olanaklı. Ancak bunun için ASP, gibi bir arabirim kullanman ve yeterli SQL bilgisine saip olman gerekli. 3-) Bunun için ilk yol client-side(istemci-taraflı) bir program(JavaScript)kullanmak Bu program basitçe şöyle birşey olur: <script language=JavaScript> function validate_it () { if(document.forms[0].ad.value = "") { alert("Lütfen ad boşluğunu doldurun"); document.forms[0].ad.focus(); return false; .... Diğer form değerleri.. return true; } } </script> Formu denetlemek için de form tagına <form action=form.ASP onSubmit=return validate_it()> Yazmalısın Bundan başka bu denetlemeyi doğrudan formda kullandığın program içerisinden de yapabilirsin. PS: Bu mesaja stalker'in eli degmistir=P |
|
|
|
|
|
#4 (permalink) |
|
Bayanlıkla alakası yok sanırım...
Bildiğim kadarıyla forumlar standart paketler halinde kuruluyor ve hemen hemen hepsinde standart olarak çalıştığı için kimseler bu konuyla haşır neşir olmamıştır. Sebep bu olsa gerek...
__________________
eee portfolyo... |
|
|
|
|
|
|
#5 (permalink) |
|
Üyelik Tarihi: 20.07.2000
Yer: İstanbul TÜRKİYE
Yaş: 27
Mesaj: 50
|
Selam Dostum;
ASP kullandığını varsayarak direkt cevaplara geçiyorum. 1- Formun işlem sayfasına (actionunda belirtilen sayfa) tüm işlemler bittikten sonra sayfanın en altına şöyle küçük bir ekleme yap. <% response.cookies("form")("geldimi")=1 response.cookies("form").expires=now()+365 %> Bu tek başına birşey ifade etmez. Kullanıcının bilgisayarına bir cookie gönderir ve bu cookienin değerini 1 yapar. Şimdi anasayfana da aşağıdaki kodları ekledin mi işlem tamamdır. Önce ufak bir menü tasarlayalım. <table border=0><tr><td> <a href="anasayfa.HTML">| Ana Sayfa |</a></td> <td> <a href="ikincisayfa.HTML> İkinci Sayfa |</a></td> <% if request.cookies("form")("geldimi")=1 then %> </tr></table> <% else %> <td> <a href=form.ASP> form |</a> </td></tr></table> <% end if %> Bu hazırladığımız menü eğer kullanıcı formu doldurduysa şu şekilde görünecektir. | Ana Sayfa | İkinci Sayfa | Yok eğer doldurmamışsa aşağıdaki gibi. | Ana Sayfa | İkinci Sayfa | form | Şimdi herşey tamam gibi görünüyor ama ya kullanıcı browsere direkt form sayfasının adresini girerse? Bu kodlarla bal gibi formu kurcalayabilir. Bunu engellemek için ise aşağıdaki kodları formun işlem sayfasının en başına yazman yeterli olacaktır. <% @language=vbscript Codepage=1254 %> <% Option Explicit Response.buffer=true %> <% if request.cookies("form")("geldimi")=1 then Response.write "Dostum sen bu formu daha önce doldurmamış mıydın???" Response.end end if %> 2- Neden veri tabanı kullanmıyorsun? Access 2000 mesela? 3- Yine form işlem sayfasında şu konrolleri yap. Formumuzdan 3 değer aldığımızı farzedelim, Adı, Soyadı, Görüşleri. <% dim adi, soyadi, gorusleri adi=Request.form("adi") soyadi=Request.form("soyadi") gorusleri=Request.form("gorusleri") if len(adi)=0 or adi="" Then Response.write "Adınızı girmediniz!" Response.end else if len(soyadi)=0 or soyadi="" then Response.write "Soyadınızı girmediniz!" Response.end else if len(gorusleri)=0 or gorusleri="" then Response.write "Görüşlerinizi belirtmediniz!" Response.end end if end if end if %> ASP ile bu şekilde halledebilirsin ama ben sana ScottJr'ın verdiği JavaScript'i tavsiye ederim, o daha hızlı çalışıyor
|
|
|
|
|
|
#7 (permalink) |
|
Üyelik Tarihi: 20.07.2000
Yer: İstanbul TÜRKİYE
Yaş: 27
Mesaj: 50
|
DÜZELTME!!!
Selam Seher;
Dün cevabımda küçük bir yanlışlık yaptığımın farkına eve gidince vardım. Şimdi bunu düzeltiyorum. -------------------------------------------------- Şimdi herşey tamam gibi görünüyor ama ya kullanıcı browsere direkt form sayfasının adresini girerse? Bu kodlarla bal gibi formu kurcalayabilir. Bunu engellemek için ise aşağıdaki kodları formun işlem sayfasının en başına yazman yeterli olacaktır. <% @language=vbscript Codepage=1254 %> <% Option Explicit Response.buffer=true %> <% if request.cookies("form")("geldimi")=1 then Response.write "Dostum sen bu formu daha önce doldurmamış mıydın???" Response.end end if %> -------------------------------------------------- Olarak yazdığım satırda küçük bir hata var. Yukarıdaki kodları formun işlem sayfasına yazman gerekli diye yazmıştım. Formun işlem sayfasına değil de formun bulunduğu sayfanın en başına yazmalısın. Çalışmalarında başarılar... |
|
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
Zoque'a hoşgeldiniz!