Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > formda hata
Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
23.10.2007-19:47 #29296
İnsan kaynakları formu düzenliyorum. Ama formda hata var. Çalıştıramıyorum.
İmagebutton'a tıkladığında girdiğimiz verileri session'da tutacak kodu yazıyorum. Sonra da response.Redirect ile iş başvuru formunda 2.sayfaya götürmeye çalışıyorum. Ama sayfada kalıyor. Bunun yanında butonun içine bile girmiyor. nerede yanlış yapmış olabilirim. Yardımcı olabilirseniz çok sevineceğim.

<asp:imagebutton id="IMG1" tabIndex="21" runat="server" ImageUrl="../images/form_next.gif"></asp:imagebutton>

private void Page_Load(object sender, System.EventArgs e)
{
IMG1.Attributes.Add("onclick","butonName=""+IMG1.ClientID+"";");

}
protected void IMG1_Click(object sender, ImageClickEventArgs e)
{
Session.Add("adi",txtadi.Value);
Session.Add("soyad", txtSoyadi.Value);
Session.Add("uyruk",txtuyruk.Value);
Session.Add("dogumyeri",txtdyeri.Value);
Session.Add("evtel",txtevtel.Value);
Session.Add("ceptel",txtceptel.Value);
Session.Add("istel",txtistel.Value);
Session.Add("email", txtemail.Value);
Response.Redirect("app_form02.aspx");

}





Yazar
timur


avatar
İstanbul
Kayıt: 19.01.2006
23.10.2007-20:28 #29299
ImageButton ile yazdığın metodu ilişkilendirmemişsin.

<asp:imagebutton id="IMG1" tabIndex="21" runat="server" ImageUrl="../images/form_next.gif" OnClick="IMG1_Click"></asp:imagebutton>

diyerek IMG1 ile IMG1_Click metodunu ilişkilendirmen gerekiyor.

İyi çalışmalar...





Hayat varsa umut vard?r...
www.timureroglu.com

Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
23.10.2007-20:33 #29300
onu da yaptım fakat onu yapınca da şöyle bir hata alıyorum "System.NullReferenceException: Object reference not set to an instance of an object"
protected void IMG1_Click(object sender, ImageClickEventArgs e)
Line 159: {
Line 160: Session.Add("adi",txtadi.Value);





Yazar
aliprinter


avatar
İstanbul
Kayıt: 12.02.2006
23.10.2007-20:40 #29302
IMG1.Attributes.Add("onclick","butonName=""+IMG1.ClientID+"";");
bu satır dikkatimi çekti. tırnaklar aşağıdaki gibi olmalı bence
IMG1.Attributes.Add("onclick","butonName='" + IMG1.ClientID + "';");

timur'un dediği gibi Page_Load'da değilde imagebutton tagında da ilişkilendirebilirsin.

Aldığın diğer hataya gelince txtadi ne kontrolü. ASP.Net TextBoxkontrolünün value değilde Text özelliği olduğunu sanıyorum. HTML Input Text kullanıyorsan runat=server deyip Value özelliğini kullanabilirsin.





Yazar
timur


avatar
İstanbul
Kayıt: 19.01.2006
23.10.2007-20:42 #29304
neozepron yazdi
 
onu da yaptım fakat onu yapınca da şöyle bir hata alıyorum "System.NullReferenceException: Object reference not set to an instance of an object"
protected void IMG1_Click(object sender, ImageClickEventArgs e)
Line 159: {
Line 160: Session.Add("adi",txtadi.Value);


En azından şimdi butonun click olayına girebiliyorsun :)

Aldığın hata Null Reference hatası. Yani bir tane nesne null geliyor ve sen o nesneyi kullanmaya çalışıyorsun. Bunu anlamanın en iyi yolu debug yapmaktır. Kodunda debug ile ilerlersen hangi nesneye null geldiğini anlayabilirsin. Görünüşe göre de txtadi değişkeni null geliyor. Ona dikkat etsen iyi olur diye düşünüyorum. İyi çalışmalar...

İyi çalışmalar...





Hayat varsa umut vard?r...
www.timureroglu.com

Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
23.10.2007-20:50 #29306
evet input type olarak alınmış text box'lar runat=server yazılmamış. onları şu anda ekliyorum. Cevaplarınız için çok sağolasınız. İnşallah bundan başka bir hata çıkmaz.





Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
24.10.2007-10:14 #29330
ben de yine ufak bir problem var.
fatih.popup.isbasvuru isBasvuru=new fatih.popup.isbasvuru();
Session["isbasvuru"]=isBasvuru;
isBasvuru.adi=txtadi.Value;
isBasvuru.soyad= txtSoyadi.Value;
...
şeklinde ilk sayfayı kaydediyorum.
6.sayfaya kadar bu şekilde session'ın içinde bilgileri tutuyorum.
sonrasında basvurukaydet diye bir fonksiyon yazdım. son gönder butonuna tıkladığımda oradaki bilgileri de alarak kaydedecek database'e

basvuruKaydet(isBasvuru.adi.ToString(), isBasvuru.soyad.ToString(), isBasvuru.uyruk.ToString()...vs

public static void basvuruKaydet(string adi, string soyad, string uyruk... vs

SqlCommand basvuruBilgi =new SqlCommand("basvuru_kaydet", connneo);
basvuruBilgi.CommandType=CommandType.StoredProcedure;
basvuruBilgi.Parameters.Add("@kullanici_adi",SqlDbType.NVarChar,100);
basvuruBilgi.Parameters["@kullanici_adi"].Value=adi;
basvuruBilgi.Parameters.Add("@kullanici_soyadi",SqlDbType.NVarChar,100);
basvuruBilgi.Parameters["@kullanici_soyadi"].Value=soyad;
basvuruBilgi.Parameters.Add("@kullanici_uyruk",SqlDbType.NVarChar,100);
basvuruBilgi.Parameters["@kullanici_uyruk"].Value=uyruk; ... vs

basvurukaydet'te son sayfadaki bilgileri alabiliyorum. ama önceki bilgiler null dönüyor.

yani adi dolduruyorum. isBasvuru.adi=fatih oluyor ilk sayfada . ama son sayfaya geldiğimde bunu görmüyor.

Acaba sorunumu ne olabilir?





Yazar
sevecen


avatar
adana istanbul
Kayıt: 08.02.2006
24.10.2007-12:32 #29335
session ölüyor olabilir. her adımda farklı sayfaya yönlendirmek yerine her sayfadaki tasarımları panel vb. içine alıp, sekmelerde gezinirken visible true veya false yapman daha iyi değil mi? ya da böyle yapmak istemiyorsan xml'e ya da notepade yazabilirsin. session olayı pek güvenilir değildir.





bize ruyalarimizin degil uyanikligimizin tabiri gerek (Alinti)





Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
24.10.2007-13:14 #29336
session ölüyor da, orada ölmemesi için ne yapabiliriz? nasıl aynı session devam edebilir?





Yazar
sevecen


avatar
adana istanbul
Kayıt: 08.02.2006
24.10.2007-18:38 #29347
timeout'u attırırsın.

Page.Session.Timeout = xxx;





bize ruyalarimizin degil uyanikligimizin tabiri gerek (Alinti)





Yazar
timur


avatar
İstanbul
Kayıt: 19.01.2006
25.10.2007-16:56 #29395
neozepron yazdi
 
session ölüyor da, orada ölmemesi için ne yapabiliriz? nasıl aynı session devam edebilir?


Tüm projende Session süresinin uzamasını istiyorsan web.config dosyası içinde session süresini arttırman gerekiyor.

İyi çalışmalar...





Hayat varsa umut vard?r...
www.timureroglu.com

Yazar
mustafa


avatar
Istanbul
Kayıt: 07.01.2006
26.10.2007-10:43 #29417
 
fatih.popup.isbasvuru isBasvuru=new fatih.popup.isbasvuru();
Session["isbasvuru"]=isBasvuru;

şeklinde Session a bişey atarken object türünden atılır. Dolayısıyla tekrar o objeyi Sessiondan çekerken tür tanımlaması yapman lazım (boxing - unboxing olayı).

///objeyi almak için

fatih.popup.isbasvuru isBasvuru=new fatih.popup.isbasvuru();

isBasvuru = ( fatih.popup.isbasvuru ) Session["isbasvuru"];

//
şeklinde bi dene.

İyi çalışmalar.







Yazar
neozepron


avatar
Ayd?n
Kayıt: 18.01.2006
28.10.2007-11:51 #29495
kendi hatamdan kaynaklanıyormuş. her sayfada Basvuru session'ını yeniden oluşturduğum için, session yenilemiş içindeki bilgiler diğer sayfalarda bilgiler yalan olmuş.

Teşekkürler yardımlarınız için






Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb