• 02-09-2015, 12:02:25
    #1
    veri tabanına resim kaydetmeyi çıkarttığımda resimi yüklüyor

    cmdKaydet.Parameters.Add("Resmi", isim); çıkartıyorum ve sql commaddan resmi çıkartıyorum çalışıyor ama ama yolu kaydedemiyorum veri tabanına

    sanırım burada bir sıkıntı var.

    verdiği hata
    Server Error in '/' Application.
    Conversion failed when converting the nvarchar value '93c428ae-380e-4fdb-91cf-7baed5b725df' to data type int.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
    
    Exception Details: System.Data.SqlClient.SqlException: Conversion failed when converting the nvarchar value '93c428ae-380e-4fdb-91cf-7baed5b725df' to data type int.
    
    Source Error:
    
    
    Line 84:         cmdKaydet.Parameters.Add("Ogrenci", Ogrenci);
    Line 85:         cmdKaydet.Parameters.Add("Hepsi", Hepsi);
    Line 86:         cmdKaydet.ExecuteNonQuery();
    Line 87:         Response.Redirect("eKutuphane.aspx");
    Line 88:     }
    
    
    Source File: c:\inetpub\vhosts\yeditepe.com\httpdocs\Admin\eKutuphane.aspx.cs    Line: 86
    
    Stack Trace:
    
    
    [SqlException (0x80131904): Conversion failed when converting the nvarchar value '93c428ae-380e-4fdb-91cf-7baed5b725df' to data type int.]
       System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +1753346
       System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +5295154
       System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +242
       System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +1682
       System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +269
       System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite) +1325
       System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) +175
       System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) +205
       System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +160
       Admin_eKutuphane.btnKaydet_Click(Object sender, EventArgs e) in c:\inetpub\vhosts\yeditepe.com\httpdocs\Admin\eKutuphane.aspx.cs:86
       System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9553594
       System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724
    
    
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17929

    aspx.cs kodlarım
    using System;
    using System.Data;
    using System.Data.SqlClient;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.IO;
    
    
    public partial class Admin_eKutuphane : System.Web.UI.Page
    {
        Fonksiyon system = new Fonksiyon();
        protected void Page_Load(object sender, EventArgs e)
        {
    
        }
        protected void btnKaydet_Click(object sender, EventArgs e)
        {
    
            string isim = "";
            if (FileUpload1.HasFile)//Kullanıcı fileupload ile bir dosya seçmiş ise işlemleri gerçekleştir.
            {
                if (FileUpload1.PostedFile.ContentType == "image/jpeg") //Sadece jpeg dosyalarını yüklenmesine izin veriyoruz.
                {
                    if (FileUpload1.PostedFile.ContentLength < 1024000) //Maksimum 1MB'lık dosyaların yüklenmesine izin veriyoruz.
                    {
                        isim = Guid.NewGuid().ToString();
                        //Benzersiz bir isim oluşturduk.İsimlendirme için farklı yöntemlerde kullanabilirsiniz.
                        FileUpload1.SaveAs(Server.MapPath("~/Dosyalar/") + isim + ".jpeg");
                        //Sunucuda ki resimler klasörünün içerisine seçilen resmi oluşturduğumuz benzersiz isim ile kaydediyoruz.
                        lblMesaj.Text = "Dosya yüklendi. Alınan dosyanın detayları:<br>" +
                            "Dosya Türü:" + FileUpload1.PostedFile.ContentType + "<br>" +
                            "Dosya Boyutu:" + FileUpload1.PostedFile.ContentLength;
                        //Detaylı bir bilgi mesajı verdik.  
                    }
                    else
                        lblMesaj.Text = "Dsya boyutu maximum 1MB olmalıdır.";
                }
                else
                    lblMesaj.Text = "Sadece jpeg uzantılı dosyalar yüklenebilir.";
            }
            else
                lblMesaj.Text = "Lütfen bir dosya seçiniz.";
    
    
    
            int Dergi, Kitap, DersNotu, Ogrenci, Temsilci, Hepsi;
            Dergi = 0;
            Kitap = 0;
            DersNotu = 0;
            Ogrenci = 0;
            Temsilci = 0;
            Hepsi = 0;
    
    
    
            if (chcDergi.Checked == true)
                Dergi = 1;
            if (chcKitap.Checked == true)
                Kitap = 1;
            if (chcDersNotu.Checked == true)
                DersNotu = 1;
            if (chcTemsilci.Checked == true)
                Temsilci = 1;
            if (chcOgrenci.Checked == true)
                Ogrenci = 1;
            if (chcHepsi.Checked == true)
                Hepsi = 1;
    
    
    
    
            SqlConnection baglanti = system.baglan();
            SqlCommand cmdKaydet = new SqlCommand("Insert into Kutuphane(Adi,Dergi,Resmi,Kitap,DersNotu,Temsilci,Ogrenci,Hepsi) " +
                "values(@Adi,@Dergi,@Kitap,@DersNotu,@Ogrenci,@Resmi,@Temsilci,@Hepsi)", baglanti);
            cmdKaydet.Parameters.Add("Dergi", Dergi);
            cmdKaydet.Parameters.Add("Adi", txtAdi.Text);
            cmdKaydet.Parameters.Add("Kitap", Kitap);
            cmdKaydet.Parameters.Add("Resmi", isim); 
            cmdKaydet.Parameters.Add("DersNotu", DersNotu);
            cmdKaydet.Parameters.Add("Temsilci", Temsilci);
            cmdKaydet.Parameters.Add("Ogrenci", Ogrenci);
            cmdKaydet.Parameters.Add("Hepsi", Hepsi);
            cmdKaydet.ExecuteNonQuery();
            Response.Redirect("eKutuphane.aspx");
        }
    }
  • 02-09-2015, 13:14:16
    #2
    Büyük ihtimalle sorun SQL sorgunda. İnteger veri alanına string değer yazdırıyorsun.
    Yani veri değerlerinin sıralamasında hata var. Aşağıda ki gibi düzeltme yaparsan çalışacağını umuyorum.
    Insert into Kutuphane(Adi,Dergi,Resmi,Kitap,DersNotu,Temsilci,Ogrenci,Hepsi)  
    values(@Adi,@Dergi,@Resmi,@Kitap,@DersNotu,@Temsilci,@Ogrenci,@Hepsi)
  • 02-09-2015, 13:30:44
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Hata çok açık bir şekilde yazıyor.
    Conversion failed when converting the nvarchar value '93c428ae-380e-4fdb-91cf-7baed5b725df' to data type int.
    Guid'i integer yapmaya çalışıyorsun.
  • 02-09-2015, 14:52:30
    #4
    rob33n adlı üyeden alıntı: mesajı görüntüle
    Hata çok açık bir şekilde yazıyor.
    Conversion failed when converting the nvarchar value '93c428ae-380e-4fdb-91cf-7baed5b725df' to data type int.
    Guid'i integer yapmaya çalışıyorsun.
    nasıl yapılır hocam kod yazabilirmisiniz

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 14:52:30 -->-> Daha önceki mesaj 14:11:02 --

    sorunu hallettim
    gözümden kaçan bir hata imiş
    ilginiz için teşekkürler.

    son bi soru muhtemelen onuda çözerim
    dosyanın uzantısını kayıt etmiiyor kendisi benzersiz isim üretiyor buna dosya uzantısını nasıl kayıt ettirebilirim.
  • 02-09-2015, 15:54:20
    #5
    Zaten ekliyorsun burada.
    FileUpload1.SaveAs(Server.MapPath("~/Dosyalar/") + isim + ".jpeg");
  • 02-09-2015, 21:18:49
    #6
    rob33n adlı üyeden alıntı: mesajı görüntüle
    Zaten ekliyorsun burada.
    FileUpload1.SaveAs(Server.MapPath("~/Dosyalar/") + isim + ".jpeg");

    evet biliyorum ama kod çalışmıyor böyle

    bende isim de tanımladım. sonuç
    isim = Guid.NewGuid().ToString() + ".jpg" ;
    //Benzersiz bir isim oluşturduk.İsimlendirme için farklı yöntemlerde kullanabilirsiniz.
    FileUpload1.SaveAs(Server.MapPath("~/Dosyalar/") + isim);
    yaptım düzeldi.
    teşekkürler
  • 03-09-2015, 17:16:10
    #7
    bir sorunum daha var

    checkbox ların biri seçili iken diğeri seçilemesin istiyorum

    yani dergi kitap dersnotu checkbox ları var. dergiye tıklayınca kitap a tıklanınca dergideki işaret kalksın yani bu 3 checkbox dan biri seçilebilsin sadec

    bunu nasıl yapabilirim
  • 03-09-2015, 17:30:44
    #8
    deSefa adlı üyeden alıntı: mesajı görüntüle
    bir sorunum daha var

    checkbox ların biri seçili iken diğeri seçilemesin istiyorum

    yani dergi kitap dersnotu checkbox ları var. dergiye tıklayınca kitap a tıklanınca dergideki işaret kalksın yani bu 3 checkbox dan biri seçilebilsin sadec

    bunu nasıl yapabilirim
    CheckBox ile onu yapamazsınız. Onu yapabilmeniz için CheckBox ların click olayına diğerlerinin tiklerini temizletmeniz lazım. Ama en kolayı radioButton kullanmak olacaktır. Ve radiobuttonları gruplamayı unutmayınız.
  • 03-09-2015, 17:44:42
    #9
    jQuery ile yapabilirsin. http://jsfiddle.net/egtdtk86/

    $(function() {
        $("input[type=checkbox]").on("click", function(e){
            var chk = $(this);
            if(chk.is(":checked")){
                $("input[type=checkbox]").prop("checked", false);
                chk.prop("checked", true);
            }
        });
    });