zelfde data in datagrid

Status
Niet open voor verdere reacties.

deadhorse1

Nieuwe gebruiker
Lid geworden
4 apr 2008
Berichten
1
Hi, ik heb ene probleem met een programma dat ik in school aan het maken ben. Het programma maakt deel uit van een groot programma als deel van het eindwerk en iedereen van de klas kreeg een stuk toegewezen. Mijn deel was een database querye om de leerkrachten hun lesindeling van de week te tonen in een gridview. Het programma "werkt" eigelijk, maar voor een reden krijg ik dezelfde data 2 keer in die gridview. Eerst werkte het programma normaal maar dan besloot ik ipv textboxen dropdownlisten te gebruiken en dan begon het probleem voor te komen. Ik heb c# nog maar voor een paar maanden dus ni teveel van verwachten, maar misschien da iemand hier mij kon helpen. Alvast bedankt en het programma is gemaakt in visual web developer als het iets uitmaakt.

The database

http://rapidshare.com/files/104826652/DatabaseGip2.zip.html


The code

Code:
using System;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.OleDb;


public partial class _Default : System.Web.UI.Page
{
    //declaratie
    OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\School\\Programmeren\\DatabaseGip2.mdb;Persist Security Info=False;");
    OleDbCommand command;
    OleDbDataAdapter adapter;
    DataSet ds = new DataSet();
    string naam, dag, dag2, uur;

    protected void Page_Load(object sender, EventArgs e)
    {

    }


    protected void Button1_Click(object sender, EventArgs e)
    {
        naam = DropDownList1.SelectedValue;
        dag = DropDownList2.SelectedValue;
        dag2 = DropDownList3.SelectedValue;
        uur = TextBox1.Text;
        Label5.Text = "";
        try
        {
            //commando mogelijk maken, grid leegmaken, nieuwe dataset maken
            command = conn.CreateCommand();
            GridView1.DataSource = null;
            ds = new DataSet();

            //verbinding openen
            conn.Open();
            //per week, per dag, per uur
            if (RadioButton1.Checked == true)
            {
                //sql statement uit textbox halen en data in adapter steken
                command.CommandText = "SELECT t.TijdUur, t.TijdDag, v.VakNaam FROM tblVakkenPerLeerkracht i, tblLeerkracht l,tblVak v, tblUurrooster u, tblTijd t WHERE l.leerkrachtNaam = '" + naam + "' AND u.LeerkrachtID=l.LeerkrachtID AND l.LeerkrachtID=i.LeerkrachtID AND i.VakID=v.VakID AND u.TijdID=t.TijdID AND v.VakID=u.VakID ORDER BY t.TijdID";        //sql statement hier hardcoded insteken
                adapter = new OleDbDataAdapter(command);
                adapter.Fill(ds);

                if (adapter.Fill(ds) == 0)
                {
                    Label5.Text = naam + " geeft geen les de hele week";
                }
            }

            if (RadioButton2.Checked == true)
            {

                //sql statement uit textbox halen en data in adapter steken
                command.CommandText = "SELECT  t.TijdUur, t.TijdDag, v.VakNaam FROM tblVakkenPerLeerkracht vpl, tblLeerkracht l,tblVak v, tblUurrooster u, tblTijd t WHERE l.leerkrachtNaam = '" + naam + "' AND t.TijdDag = '" + dag + "' AND u.LeerkrachtID=l.LeerkrachtID AND l.LeerkrachtID=vpl.LeerkrachtID AND vpl.VakID=v.VakID AND u.TijdID=t.TijdID AND v.VakID=u.VakID";       //sql statement hier hardcoded insteken
                adapter = new OleDbDataAdapter(command);
                adapter.Fill(ds);

                if (adapter.Fill(ds) == 0)
                {
                    Label5.Text = naam + " geeft geen les op " + dag;
                }
            }

            if (RadioButton3.Checked == true)
            {

                //sql statement uit textbox halen en data in adapter steken
                command.CommandText = "SELECT  t.TijdUur, t.TijdDag, v.VakNaam FROM tblVakkenPerLeerkracht vpl, tblLeerkracht l,tblVak v, tblUurrooster u, tblTijd t WHERE l.leerkrachtNaam = '" + naam + "' AND t.TijdDag = '" + dag2 + "' AND t.TijdUur =" + uur + " AND u.LeerkrachtID=l.LeerkrachtID AND l.LeerkrachtID=vpl.LeerkrachtID AND vpl.VakID=v.VakID AND u.TijdID=t.TijdID AND v.VakID=u.VakID";        //sql statement hier hardcoded insteken
                adapter = new OleDbDataAdapter(command);
                adapter.Fill(ds);

                if (adapter.Fill(ds) == 0)
                {
                    Label5.Text = naam + " geeft geen les op " + dag2 + " het " + uur + "de uur";
                }
            }

            //data uit adapter in grid steken

            GridView1.DataSource = ds.Tables[0];
            GridView1.DataBind();
        }

        catch (Exception a)
        {
            //fout opvangen
            Label6.Text = a.ToString();
        }

        finally
        {
            conn.Close();
        }
    }

    protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
    {
        DropDownList2.Visible = false;
        DropDownList3.Visible = false;
        TextBox1.Visible = false;
        Label2.Visible = false;
        Label3.Visible = false;
        Label4.Visible = false;
    }
    protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
    {
        DropDownList2.Visible = true;
        DropDownList3.Visible = false;
        TextBox1.Visible = false;
        Label2.Visible = true;
        Label3.Visible = false;
        Label4.Visible = false;
    }
    protected void RadioButton3_CheckedChanged(object sender, EventArgs e)
    {
        DropDownList2.Visible = false;
        DropDownList3.Visible = true;
        TextBox1.Visible = true;
        Label2.Visible = false;
        Label3.Visible = true;
        Label4.Visible = true;
    }

}


[U][B]HTML[/B][/U]

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        Leerkracht naam: &nbsp;&nbsp;<aspBig SmileropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource1" DataTextField="LeerkrachtNaam" DataValueField="LeerkrachtNaam">
        </aspBig SmileropDownList>
        <aspTongue TiedqlDataSource ID="SqlDataSource1" runat="server"
            ConnectionString="<%$ ConnectionStringsBig SmileatabaseGip2ConnectionString %>"
            ProviderName="<%$ ConnectionStringsBig SmileatabaseGip2ConnectionString.ProviderName %>"
            SelectCommand="SELECT [LeerkrachtNaam] FROM [tblLeerkracht]">
        </aspTongue TiedqlDataSource>
        <br />
        &nbsp;<br />
        <asp:RadioButton ID="RadioButton1" GroupName="radio" runat="server" Text="Alles" AutoPostBack="true" OnCheckedChanged="RadioButton1_CheckedChanged" /><br />
        <asp:RadioButton ID="RadioButton2" GroupName="radio" runat="server" Text="Per dag" AutoPostBack="true" OnCheckedChanged="RadioButton2_CheckedChanged" /><br />
        &nbsp;<asp:Label ID="Label2" runat="server" Text="Voer dag in:" Visible="False"></asp:Label>&nbsp;&nbsp;&nbsp;<aspBig SmileropDownList
            ID="DropDownList2" runat="server" Visible="False">
            <asp:ListItem Selected="True" Value="" Text=""/>
            <asp:ListItem Value="Maandag" Text="Maandag"/>
            <asp:ListItem Value="Dinsdag" Text="Dinsdag"/>
            <asp:ListItem Value="Woensdag" Text="Woensdag"/>
            <asp:ListItem Value="Donderdag" Text="Donderdag"/>
            <asp:ListItem Value="Vrijdag" Text="Vrijdag"/>
        </aspBig SmileropDownList><br />
        <br />
        <asp:RadioButton ID="RadioButton3" GroupName="radio" runat="server" Text="Per uur" AutoPostBack="true" OnCheckedChanged="RadioButton3_CheckedChanged" />&nbsp;<br />
        &nbsp;<asp:Label ID="Label3" runat="server" Text="Voer dag in:" Visible="False"></asp:Label>&nbsp;&nbsp;<aspBig SmileropDownList
            ID="DropDownList3" runat="server" Visible="False">
            <asp:ListItem Selected="True" Value="" Text=""/>
            <asp:ListItem Value="Maandag" Text="Maandag"/>
            <asp:ListItem Value="Dinsdag" Text="Dinsdag"/>
            <asp:ListItem Value="Woensdag" Text="Woensdag"/>
            <asp:ListItem Value="Donderdag" Text="Donderdag"/>
            <asp:ListItem Value="Vrijdag" Text="Vrijdag"/>
        </aspBig SmileropDownList><br />
        &nbsp;<asp:Label ID="Label4" runat="server" Text="Voer uur in:" Visible="False"></asp:Label>
        &nbsp;&nbsp;
        <asp:TextBox ID="TextBox1" runat="server" Height="19px" Width="88px"
            Visible="False"></asp:TextBox><br />
        <br />
        <asp:Button ID="Button1" runat="server" Height="44px" onclick="Button1_Click"
            Text="Query" Width="112px" />
        <asp:Label ID="Label6" runat="server" Text="Label"></asp:Label>
        <br />
        <br />
        <asp:Label ID="Label5" runat="server" Text="Label"></asp:Label><br />
        <asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None">
            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <EditRowStyle BackColor="#999999" />
            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
        </asp:GridView>
        .</div>
   
    </form>
   
</body>
</html>
 
Laatst bewerkt door een moderator:
Zet boven het gedeelte waar je de connectie opent eens een "gridview.clear()"
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan