a. Resimdeki Öğrenci girişi için btn_giris.Click() olayındaki kodları ve kullanacağınız Stored Procedure' u yazınız.
i. Öğrenci yanlış giriş yaparsa lbl_sonuc = 'Yanlış giriş.' yazacak.
ii. Öğrenci mezun olmuşsa lbl_sonuc = 'Mezun oldunuz.' yazacak.
iii. Öğrenci doğru giriş için lbl_sonuc = Öğrencinin id bilgisi yazacak.
Stored Procedure
create proc ogrenci_giris
@eposta nvarchar(30),
@sifre nvarchar(40)
as
if (select isnull(COUNT(*),0) as sayi from Ogrenci where eposta=@eposta and sifre=@sifre)>0
begin
if (select isnull(COUNT(*),0) as sayi from Ogrenci where eposta=@eposta and sifre=@sifre and durum='Mezun')>0
begin
Select -1
end
else
begin
select top 1 isnull(id,0) from Ogrenci where eposta=@eposta and sifre=@sifre
end
end
else
begin
Select 0
end
Code-Behind
protected void btn_giris_Click(object sender, EventArgs e)
{
baglan bag = new baglan();
object[,] icerik = new object[,] {{ "@eposta", txt_eposta.Text },
{ "@sifre", txt_sifre.Text }};
int id = 0;
id = Convert.ToInt32(bag.tek_veri_getir(icerik, "ogrenci_giris"));
if (id == -1)
lbl_sonuc.Text = "Mezun oldunuz.";
else if (id == 0)
lbl_sonuc.Text = "Yanlış giriş.";
else
lbl_sonuc.Text = id.ToString();
}
b. Resimdeki Öğrenci Düzenle için Page_Load() ve btn_duzenle_click() olayındaki kodları ve kullanacağınız Stored Procedure'u yazınız. (ogrenci_duzenle.aspx?id=1)
Page_Load için:
1. Durum, Enumdan çekilecek (Enum adı = Ogr_Durumlari)
2. Danışman, Veritabanından çekilecek (Text= Unvan ad soyad, Value= id)
3. Ad,Soyad,Durum,Danışman DataReader ile çekilip gösterilecek.
Stored Procedures
create proc drop_akademisyen
as
select unvan +' ' + ad + ' '+ soyad as akademisyen_adi, id from Akademisyen
create proc ogrenci_getir
@id int
as
select * from Ogrenci where id=@id
create proc ogrenci_duzenle
@id int,
@ad nvarchar(50),
@soyad nvarchar(50),
@durum nvarchar(30),
@danisman_id int
as
update Ogrenci set ad=@ad,soyad=@soyad,durum=@durum,danisman_id=@danisman_id
where id=@id
Code-Behind
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack == false)
{
baglan bag = new baglan();
drop_durum.DataSource = Enum.GetNames(typeof(Ogr_Durumlari));
drop_durum.DataBind();
drop_danisman.DataSource = bag.tablo_getir("drop_akademisyen");
drop_danisman.DataTextField = "akademisyen_adi";
drop_danisman.DataValueField = "id";
drop_danisman.DataBind();
object[,] icerik = new object[,] {{"@id", Convert.ToInt32(Request.QueryString["id"])}};
SqlDataReader dra = bag.calistir_dra(icerik, "ogrenci_getir");
if (dra.Read())
{
txt_ad.Text = dra["ad"].ToString();
txt_soyad.Text = dra["soyad"].ToString();
drop_durum.Items.FindByText(dra["durum"].ToString()).Selected = true;
drop_danisman.Items.FindByValue(dra["danisman_id"].ToString()).Selected = true;
}
dra.Close();
}
}
protected void btn_duzenle_Click(object sender, EventArgs e)
{
baglan bag = new baglan();
object[,] icerik = new object[,] { { "@id", Convert.ToInt32(Request.QueryString["id"]) },
{"@ad",txt_ad.Text},
{"@soyad",txt_soyad.Text},
{"@durum",drop_durum.SelectedItem.Text},
{"@danisman_id",drop_danisman.SelectedItem.Value}};
bag.calistir(icerik, "ogrenci_duzenle");
}
ConversionConversion EmoticonEmoticon