Turkcell | Geleceği Yazanlar

Soru & Cevap

must declare the scalar variable "@urunResim" hatası asp.net

19.09.2020 - 17:42

merhaba sunucuya bağlı web projemde ekleme kısmında sorun yaşıyorum lütfen yardımcı olun...

        string urunAd = TextBox1.Text;
        string urunFiyat = TextBox2.Text.ToString();
        string urunResim = FileUpload1.FileName;
        string urunAdet = TextBox3.Text.ToString();
        string urunAciklama = TextBox4.Text;

baglanti.Open();
        SqlCommand komut = new SqlCommand("insert into shopUrunler (urunAd,urunResim,urunFiyat,urunAdet,urunAciklama) values (@urunAd,@urunResim,@urunFiyat,@urunAdet,@urunAciklama)", baglanti);
        komut.Parameters.AddWithValue("@urunAd", urunAd);

        HttpPostedFile yuklenecekDosya = FileUpload1.PostedFile;
        if (yuklenecekDosya != null)
        {
            FileInfo dosyaBilgisi = new FileInfo(yuklenecekDosya.FileName);
            string klasor = "img/urunler";
            string yuklemeYeri = Server.MapPath("~/" + klasor + "/" + dosyaBilgisi.Name);
            komut.Parameters.AddWithValue("@urunResim", urunResim);
            FileUpload1.SaveAs(yuklemeYeri);
        }
        else
        {
            Label1.ForeColor = Color.Red;
            Label1.Text = "Lütfen geçerli bir resim dosyası girin.";
        }
        

        komut.Parameters.AddWithValue("@urunFiyat", urunFiyat);
        komut.Parameters.AddWithValue("@urunAdet", urunAdet);
        komut.Parameters.AddWithValue("@urunAciklama", urunAciklama);

        komut.ExecuteNonQuery();
        baglanti.Close();
        Label1.ForeColor = Color.Green;
        Label1.Text = "Kayıt Başarıyla Eklendi<br /><br />";

82 Görüntülenme

2 Cevap

Emirhan Çelik
20.09.2020 - 16:02

hatayı çözdüm farklı ve kısa bir kod girerek sorunu ortadan kaldırdım ve istediğim gibi veri tababanına resimin yolunu artı dosyaya resimi kaydediyor benim gibi bu sorunu yaşayanlar için buraya bırakıyorum kodu

FileUpload1.SaveAs(Server.MapPath("/img/urunler/" + FileUpload1.FileName));

..................(burada insert into value kodları var gibi düşünün).......................

komut.Parameters.AddWithValue("@urunResim", "~/img/urunler/" + FileUpload1.FileName);

 

if komutunu kullanmaya gerek yok iyi çalışmalar teşekkürler cihan

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

cihan
19.09.2020 - 23:39

bu hatayı alman, içerdeki if koşulu sağlanmadığından @urunresim parametresi boş gönderiliyor.if-else ten sonraki kodlar direk çalıştığından, yani @urunresim parametresini eklemediğinden hata veriyor.if içinde bir yerde bir hata alıyorsun.breakpoint ile adım adım ilerleyip nerede hata yaptığını bulabilirsin.

- seçili dosya olduğundan emin ol.seçmemiş ise hata verir.Hata vermemesi için tüm komutları if ifadenin içine alabilirsin.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.