

Visual Basic Refresh Ve Form"Dan Form"A Bilgi Aktarımı
-
slm arkadaşlar
İki tane sorum var..öncelikle bir web sitem var ve sql server 2000 kullanıyorum..bir program yazıyorum visual basic’te sitemdeki üyelerin giriş yapıp bazı bilgiler öğrenmesi için falan..
Birincisi ; mesela form1’de iki tane text var ve kişiye kullanıcı adını ve şifresini soruyorum, yazıyor kişi ve sql server’da eğer bilgiler doğruysa form2 açılıyor..Form2’de kişiyle ilgili işlemler yapıcam ama giriş yapan kullanıcının kim olduğunu form2’de nasıl anlayacağım?
şöyle denedim : form1’de text3.text = rs("id")
form2’de degisken = form1.text3.text diyorum ama duyduğuma göre Hex editor gibi editorlerle text label gibi şeylerin içeriği değiştirilebiliyormuş..bu text ya da label’in içeriği de sql’e gireceği için büyük bir güvenlik açığı oluşuyor..
Sorum şu : Vb’de asp de olduğu gibi session gibi bişe var mı?
ya da form1’de giriş yapan kullanıcının id gibi bilgilerini form2’de nasıl alabilirim?ya da giriş yapma olayı, giriş yapan kullanıcıyla ilgili işlemlerde ne yapmamı önerirsiniz?
İkincisi : Ben bir form’da label’da web sitemdeki son üyeyi yazıyorum
mesela siteme birisi üye oldu..ya da üyeliği silindi..
O an programı kullanan kişi bu değişikliği anında görebilir mi? nasıl görebilir?
Göstermek için ne yapabilirim? Form’daki bu bilgiyi nasıl refresh ederim?
label1.refresh
label1.caption.refresh
denedim ama olmadı.. -
öncelikle bi tane module oluştur ve genel bi kullanıcı belirle formlar arası bilgi taşımak istiorsan ordan bu değişkenlerle bilgi taşıyabilirsin.. o bilgileri labelden güncelleyemessin veri tabanıyla ilgili refrehler yapıp görebilrsin.. bu verilerin ne olduğunu listboxlara ekleyip yane onda güncelleyip görebilirsin..
-
Hoca güncellemeden kastım şu.
Adam giriş yaptı forma bakıyor.formda karşısında üye listesi avr diyelim. benim siteye yeni birisi üye olduğunda o adam form üzerinden bunu hemen nasıl görebilir
-
üyelerin hepsini bi listboxda topla her üye girişi veya çıkısı oldugunda bi sorgu ile list i clear yap ve ondan sonra veritabanndaki güncel bilgileri tekrar list e at ööle yaparsın modülü olşturduktan sonra global x as string integer artık ne kullanıcaksan onu belirlersin .. üyelr die bir list oluştur ööle dene
-
demek ki istediğim şeyin bi çözümü yok..neyse saol ;)
-
eyw sen saol olmadı PM at msnden konuşuruz elimden geldiğince yardımcı olurum..
-
A.Selam hoca.
1.Soruya cevap'1 modul ekle.Modulde
Public uyeadi as string
'kodunu kullanarak TUM formlarda kullanilabilecek bir string degiskeni tanimla.
'Form1 de uyeadinin dogru olup olmadiginin kontrol edilmesini saglayan buton koduna
'eger dogruysa uyeadi=text1.text ' uyeadini yazilan yap.'kodunu ekle
'Daha sonra
'Form2 load eventine
if trim(username) <> "" then labelofusername.caption=username
'eger uyeadi bos deilse labelde kullanicinin adini goster.
Mantigini anlatmaya calistim anlayabildigim ve anlatabildigim kadariyla.biraz karisik oldu.Sonucta birden fazla kullanilan degiskenlerin public deyimiyle tanimlandigini anladiysan ne mutlu :)2.Soruya cevap
O an programi kullanan kisi degisikligi aninda gorebilir.Timer yani zamanlayici kontrolu ekleyebilirsin.Form2 ye bi timer ekle,interval ozelligini (interval: timerin kac milisaniyede bir aktif olacagini belirleyen ozelliktir.Bu kadar milisaniyede bir icerdigi kod icra edilir).ayarla.Örneğin 100 olarak ayarla , yani 0.1 saniyede bir guncellencek.'timer adının adının timer2 oldugunu farzedelim.
Private Sub Timer1_Timer
labelofsonuye.caption=inet1.openurl("siteadi.com/sonuye.txt")
End Sub
'tabi baglanti 0.1 saniyede bir bu dosyaya erisemeyebilir :) doevents kodunu kullanarak islemciye gerekli zamani verebilirsin timeride biraz daha fazla ayarlaman programin kasmamasi acisindan iyi olur.Oldukca karisik oldu kusura bakmayasin sorun olursa cevaplamaya calisirim
-
;) tşk
-
Bi de arkadaşlar bişe daha sorcam, mesela veritabanımda üyeler var ben bu üyeleri asp’de yapabildiğimiz gibi do loop döngüsü içinde listelemek istiyorum ama tablo görünümünde olabilir mi bu? yani solda avatarı, yanında ismi onun yanında soyismi altta diğer bir kayıt aynı şekilde..Döngü içinde labelleri kayıt sayısınca oto. oluşturup tablo şekli verebilir miyiz? Datagrid gibi bişeyden bahsetmiyorum, umarım anlatabilmişimdir, asp’deki tablolar gibi.Normalde list gibi bişeyle listeliyorum ama o da çok acemice oluyor yani label gibi şeyler kullanarak listelemekten bahsediyorum
-
ne yazikki tam olarak anlayamadim son soyledigini hoca.fakat anladim kadariyla sunu soyliyim.Bir sayfada gosterilcek avatar sayisi(yada herneyse) kadar image nesnesi olusturursun.Ornegin 5 avatar gozukcek.Listelencek kac uye varsa 5 e bolumu kadar sayfa olusturursun.
yada load komutuyla istedigin nesneden yeni bir index belirterek calisma esnasinda olusturursun asagidaki ornekteki gibi:
Private x As Integer
Private Sub Image1_Click()
End Sub
Private Sub Command1_Click(Index As Integer)
Load Command1(x)
x = x + 1
Command1(1).Left = 2500
Command1(1).Top = Command1(0).Top
Command1(1).Visible = True
End Sub
Private Sub Form_Load()
x = 1
End Sub
Eger yanlis anlamissam.dedigini daha acik anlatirsan yardimci olmaya calisirim;kolay gelsin.