Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > เมื่อมีการติ๊ก Checkbox ใน DataGridview แล้วให้บันทึกลงฐานข้อมูลอะคับ ทำยังงัยครับ ด่วนน่ะครับๆๆ



 

เมื่อมีการติ๊ก Checkbox ใน DataGridview แล้วให้บันทึกลงฐานข้อมูลอะคับ ทำยังงัยครับ ด่วนน่ะครับๆๆ

 



Topic : 067167



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์




เมื่อมีการติ๊ก Checkbox ใน DataGridview แล้วให้บันทึกลงฐานข้อมูลอะคับ ทำยังงัยครับ

ไปถามพี่มา เขา บอกว่า


"ใช้ DataGridViewCellEventArgs ไม่ไปเหรอ ?
แล้วค่อยไป เรียก DataGridViewCheckBoxCell xx = (DataGridViewCheckBoxCell)dgv.Rows[e.RowIndex].Cells[0];
ประมาณนี้"


แต่ผมต้องการ บันทึกค่าที่ ติก ลงใน ฐาน ข้อมุล อะครับ ใครพอจะช่วยได้บ้างครับ
ข้อเป็นตัวโค๊ด ก็ยิ่งดีน่ะครับ



Tag : .NET, MySQL, Win (Windows App), C#, VS 2008 (.NET 3.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-09-26 03:32:52 By : noi014 View : 5900 Reply : 10
 

 

No. 1



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์


รอๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 11:29:42 By : noi014
 


 

No. 2

Guest


ก่อนอื่น ต้องเขียนเปน ลูปก่อนนะคับ แล้วค่อยเช็คว่าแถวไหนบ้าง ที่มีการเลือก checkbox แล้วค่อย สั่งบันทึก

Code (VB.NET)
        Dim i As Integer = 0
        Dim allid As String ' ตัวแปรเก็บค่า ID

        For i = 0 To Dg_bookrn.Rows.Count - 1

            If CBool(Dg_bookrn.Rows(i).Cells(0).FormattedValue) Then ' เช็คว่าแถวไหนที่เลือก checkbox ให้ทำต่อไปนี้

                allid = CStr(Dg_bookrn.Rows(i).Cells(3).Value.ToString)   ' ตัวแปรเก็บค่า ID โดยเก็บจากเซลที่ 3 ของ ดาต้ากริด

               ' เขียนคำสั่ง insert ลงฐานข้อมูล ระบุ where เปน allid

            End If
        Next


แค่นี้ก้อได้แล้วคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 11:39:44 By : ดด
 

 

No. 3



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์


ขอ C# หน่อยครับๆๆๆๆ ขอบคุนๆๆๆมากๆๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 11:46:24 By : noi014
 


 

No. 4



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์


แล้วถ้าต้องการทุก เชล ล่ะครับๆๆ ต้องสร้างตัวแบบ ขึ้นมาให้แล้วเรียกใช้ใหม่่เลยหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 13:32:40 By : noi014
 


 

No. 5

Guest


จากตัวโค้ด ด้านบน มันก้อวิ่งเช็คทุกแถวนะคับ ถ้ามีเช็คบ็อก ก้อจะบันทึก แต่ถ้าแถวไหนไม่ได้เช็คก้อจะไม่บันทึก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 14:12:40 By : ดด
 


 

No. 6



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์


ขอ C# หน่อยครับๆๆๆๆ พอดี ไม่เคยเขียน VBครับๆๆ ช่วยอีกนิดๆๆ กำลังได้ล่ะๆๆ ของคุนล่วงน่าน่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 14:23:32 By : noi014
 


 

No. 7



โพสกระทู้ ( 111 )
บทความ ( 0 )



สถานะออฟไลน์


Code (C#)
 private void btSave_Click(object sender, EventArgs e)
       {
           Conn = new MySqlConnection();
           if (Conn.State == ConnectionState.Open)
           {
               Conn.Close();
           }
           int i = 0;
           string Std, sql, str;
         
           for ( i = dataGridViewStd.Rows.Count - 1;i >= 0 ;i++)
               if ((bool)dataGridViewStd.Rows[i].Cells[0].FormattedValue)
               {
                Std = dataGridViewStd.Rows[i].Cells[3].Value.ToString();  // <=มันError คับ   แถวนี้ล่ะครับ ขึ้นว่า Object reference not set to an instance of an object.
              
                   str = "Server=localhost;User Id=root; Password=123123; Database=db_project; Pooling=false; Allow Zero Datetime=false;";
                   Conn = new MySqlConnection(str);
                   Conn.Open();
                   MySqlCommand Cmd;
                   
                   
                   sql = "INSERT INTO course_student(CrsId, StdID) VALUES(@sbj, @sid)";
                   Cmd = new MySqlCommand(sql, Conn);
                   Cmd.Parameters.AddWithValue("sbj", Std);
                   Cmd.Parameters.AddWithValue("sid", Std);
                   Conn.Close();
               }

           
       }



ประวัติการแก้ไข
2011-09-26 15:10:26
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-26 15:08:46 By : noi014
 


 

No. 8



โพสกระทู้ ( 63 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 7 เขียนโดย : noi014 เมื่อวันที่ 2011-09-26 15:08:46
รายละเอียดของการตอบ ::
รบกวนหน่อยนะครับ ผมขอตัวอย่าง code ที่เป็น c# สำหรับฐานข้อมูล Mysql


ที่ผมทำตอนนี้...ปัญหา คือ มันบันทึก...เฉพาะข้อมูลที่อยู่ใน datagrid ส่วนข้อมูลข้างนอกมันไม่บันทึกให้

รบกวนพี่ๆ..ช่วยดูให้หน่อยนะครับ...

Code (C#)
private void btnSavePay_Click(object sender, EventArgs e)
        {         
            conn = new MySqlConnection(connectionString);
            conn.Open();
            //แปลงจากวันที่ พศ. เป็น คศ
            string datep = datePay.Value.ToString("yyyy-MM-dd", CultureInfo.CreateSpecificCulture("en-US"));
            string sql = "INSERT INTO tbl_suppay (suppay_id,suppay_date,user_name,user_get,br_id,suppay_total)" +
            "VALUES" +
            "('" + this.txtNoPayId.Text + "','" + datep + "','" + this.txtStaff.Text + "','" + this.txtUserGet.Text + "','" + this.cbBranch.Text + "','" + this.lbTotal.Text + "')";

            cmd = new MySqlCommand(sql, conn);


            //ใน datagridview
            for (int i = 0; i < dgViewPay.Rows.Count; i++)
            {
                if ((bool)dgViewPay.Rows[i].Cells[0].FormattedValue == true)
                {
                    conn = new MySqlConnection(connectionString);
                    conn.Open();
                   
                    string sql1 = "INSERT INTO tbl_suppay_detail(sup_id,suppay_detail_amount,suppay_detail_id)" +
           "VALUES" +
           "('" + dgViewPay.Rows[i].Cells[1].Value.ToString() + "','" + dgViewPay.Rows[i].Cells[5].Value.ToString() + "','" + dgViewPay.Rows[i].Cells[7].Value.ToString() + "')";

                    cmd = new MySqlCommand(sql1, conn);
            
                }//if
            }//for

            try
            {
                cmd.ExecuteNonQuery();
                MessageBox.Show("เพิ่มข้อมูลเรียบร้อยแล้ว!!!", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "ไม่สามารถเพิ่มข้อมูลได้!!!", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            conn.Close(); 
        }


ดูจากรูปครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-10-20 12:46:46 By : Takashi_7
 


 

No. 9



โพสกระทู้ ( 63 )
บทความ ( 0 )



สถานะออฟไลน์


ยังไม่ได้...เลย...

ใครมีแนวทางบ้างครับ...รบกวนหน่อยครับ...ขอบคุณมากครับ...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-10-21 10:55:39 By : Takashi_7
 


 

No. 10

Guest


Code (C#)
private void btnSavePay_Click(object sender, EventArgs e)
        {         
            conn = new MySqlConnection(connectionString);
            conn.Open();
            //แปลงจากวันที่ พศ. เป็น คศ
            string datep = datePay.Value.ToString("yyyy-MM-dd", CultureInfo.CreateSpecificCulture("en-US"));
            string sql = "INSERT INTO tbl_suppay (suppay_id,suppay_date,user_name,user_get,br_id,suppay_total)" +
            "VALUES" +
            "('" + this.txtNoPayId.Text + "','" + datep + "','" + this.txtStaff.Text + "','" + this.txtUserGet.Text + "','" + this.cbBranch.Text + "','" + this.lbTotal.Text + "')";

            cmd = new MySqlCommand(sql, conn);

            try
            {
                cmd.ExecuteNonQuery();

            }
            catch
            {
            }

            //ใน datagridview
            for (int i = 0; i < dgViewPay.Rows.Count; i++)
            {
                if ((bool)dgViewPay.Rows[i].Cells[0].FormattedValue == true)
                {
                    conn = new MySqlConnection(connectionString);
                    conn.Open();
                   
                    string sql1 = "INSERT INTO tbl_suppay_detail(sup_id,suppay_detail_amount,suppay_detail_id)" +
           "VALUES" +
           "('" + dgViewPay.Rows[i].Cells[1].Value.ToString() + "','" + dgViewPay.Rows[i].Cells[5].Value.ToString() + "','" + dgViewPay.Rows[i].Cells[7].Value.ToString() + "')";

                    cmd = new MySqlCommand(sql1, conn);
            
                }//if
            }//for

            try
            {
                cmd.ExecuteNonQuery();
                MessageBox.Show("เพิ่มข้อมูลเรียบร้อยแล้ว!!!", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "ไม่สามารถเพิ่มข้อมูลได้!!!", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            conn.Close(); 
        }


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-10-24 14:01:14 By : ห้ามตอบเกินวันละ 2 กระทู้
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เมื่อมีการติ๊ก Checkbox ใน DataGridview แล้วให้บันทึกลงฐานข้อมูลอะคับ ทำยังงัยครับ ด่วนน่ะครับๆๆ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่