domingo, 30 de janeiro de 2011

Questionário Dinâmico em ASP.NET - Parte III

Continuandooooo....
Crie uma página professor.aspx



<%@ Page Language="VB" AutoEventWireup="false" CodeFile="professor.aspx.vb" Inherits="professor" %>

<!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 runat="server">
    <title>Professor - Home</title>
    <style type="text/css">
    .table1
        {
            width: 680px;
            border: 1px solid #999999;
            background-color: #FFFFFF;
            font: Verdana;
            font-size: x-small;
        }
        .style2
        {
            text-align: center;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
    <table align="center" class="table1" style="font-family: Verdana; font-size: x-small;">
        <tr>
            <td style="text-align: left" colspan="5">&nbsp;</td>
        </tr>
       
        <tr>
            <td class="style2">
                <asp:Button ID="Button1" runat="server" PostBackUrl="cadastra_questao.aspx" Text="Inclusão de Questões" />
            </td>
            <td class="style2">
                <asp:Button ID="Button2" runat="server" Text="Alteração e Exclusão de Questões" PostBackUrl="alteracao.aspx" />
            </td>
            <td class="style2">&nbsp;</td>
            <td class="style2">&nbsp;</td>
            <td class="style2">&nbsp;</td>
        </tr>
        <tr>
            <td style="text-align: center" colspan="5">&nbsp;</td>
        </tr>
        <tr>
            <td style="text-align: center" colspan="5">
                <asp:Button ID="Button5" runat="server" PostBackUrl="professor.aspx"
                    Text="Home" />
            &nbsp;<asp:Button ID="Button6" runat="server" PostBackUrl="Default.aspx"
                    Text="Sair" />
            </td>
        </tr>
</table>
</div>
    </form>
</body>
</html>

Ao clicar no botão “Inclusão de Questões” na página professor.aspx deve direcionar para cadastra_questao.aspx que criaremos abaixo:


<%@ Page Language="VB" AutoEventWireup="false" CodeFile="cadastra_questao.aspx.vb" Inherits="cadastra_questao" %>
<!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 runat="server">
    <title>Professor – Cadastro de Questões</title>
    <style type="text/css">
    .table1
        {
            width: 680px;
            border: 1px solid #999999;
            background-color: #FFFFFF;
            font: Verdana;
            font-size: x-small;
        }
        .style3
        {
            text-align: left;
        }
        .style4
        {
            text-align: center;
            height: 16px;
        }
    </style>
</head>
<body style="text-align: center">
    <form id="form1" runat="server">
    <div>
    <table align="center" class="table1" style="font-family: Verdana; font-size: x-small;">
        <tr>
            <td style="text-align: left" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td style="text-align: center" colspan="2">
                <asp:Button ID="Button5" runat="server" PostBackUrl="professor.aspx"
                    Text="Home" />
            </td>
        </tr>
        <tr>
            <td style="text-align: center" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">
                Tema da Questão:
<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="AccessDataSource1" DataTextField="tema" DataValueField="id">
                </asp:DropDownList>
                <asp:AccessDataSource ID="AccessDataSource1" runat="server"
                    DataFile="~/projeto.mdb" SelectCommand="SELECT * FROM [tema_questao]">
                </asp:AccessDataSource>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
                    ControlToValidate="DropDownList1" ErrorMessage="Selecione o tema"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">
                Digite o número da questão:
                <asp:TextBox ID="TextBox1" runat="server" MaxLength="2" Width="33px"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
                    ControlToValidate="TextBox1" ErrorMessage="Digite o número da questão"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">
                Digite a questão:</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">
                <asp:TextBox ID="TextBox2" runat="server" Width="674px"></asp:TextBox>
                <br />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
                    ControlToValidate="TextBox2" ErrorMessage="Digite a questão"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">
                Digite as alternativas e selecione a correta</td>
        </tr>
        <tr>
            <td class="style3" rowspan="4">
                <asp:RadioButtonList ID="RadioButtonList1" runat="server">
                    <asp:ListItem>A</asp:ListItem>
                    <asp:ListItem>B</asp:ListItem>
                    <asp:ListItem>C</asp:ListItem>
                    <asp:ListItem>D</asp:ListItem>
                </asp:RadioButtonList>
            </td>
            <td class="style3">
                <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server"
                    ControlToValidate="TextBox3" ErrorMessage="Digite a alternativa A"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server"
                    ControlToValidate="TextBox4" ErrorMessage="Digite a alternativa B"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server"
                    ControlToValidate="TextBox5" ErrorMessage="Digite a alternativa C"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                <asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server"
                    ControlToValidate="TextBox6" ErrorMessage="Digite a alternativa D"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style4" colspan="2">
                <asp:Button ID="Button6" runat="server" Text="Incluir Questão" />
&nbsp;<asp:Button ID="Button7" runat="server" Text="Cancelar" PostBackUrl="~/professor.aspx" />
            </td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td class="style3" colspan="2">&nbsp;</td>
        </tr>
     </table>
</div>
    </form>
</body>
</html>

Na página cadastra_questao.aspx.vb deveremos inserir o seguinte código:

Imports System.Data.OleDb
Imports System.Data

Partial Class cadastra_questao
    Inherits System.Web.UI.Page

    Protected Sub Button6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button6.Click

        Dim conexao As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("projeto.mdb"))
        Dim cmd As New OleDbCommand
        Dim dr As OleDbDataReader

        Session("tema") = DropDownList1.SelectedValue
        Session("num_questao") = TextBox1.Text
        Session("questao") = TextBox2.Text
        Session("alt_a") = TextBox3.Text
        Session("alt_b") = TextBox4.Text
        Session("alt_c") = TextBox5.Text
        Session("alt_d") = TextBox6.Text
        Session("correta") = RadioButtonList1.SelectedValue

        conexao.Open()
        cmd.Connection = conexao

        cmd.CommandText = "Insert into questoes (id_tema,num_questao,questao,alternativa1,alternativa2,alternativa3,alternativa4,resposta_correta)values(@tema,@num_questao,@questao,@alt_a,@alt_b,@alt_c,@alt_d,@correta)"

        With cmd.Parameters
            .Add(New Data.OleDb.OleDbParameter("@tema", Session("tema")))
            .Add(New Data.OleDb.OleDbParameter("@num_questao", Session("num_questao")))
            .Add(New Data.OleDb.OleDbParameter("@questao", Session("questao")))
            .Add(New Data.OleDb.OleDbParameter("@alt_a", Session("alt_a")))
            .Add(New Data.OleDb.OleDbParameter("@alt_b", Session("alt_b")))
            .Add(New Data.OleDb.OleDbParameter("@alt_c", Session("alt_c")))
            .Add(New Data.OleDb.OleDbParameter("@alt_d", Session("alt_d")))
            .Add(New Data.OleDb.OleDbParameter("@correta", Session("correta")))
        End With

        cmd.ExecuteNonQuery()

        Dim texto As String
        texto = "Questão cadastrada com sucesso!"
        ScriptManager.RegisterClientScriptBlock(Me, Me.GetType, "Error", "alert('" & texto & "'); window.location.href = 'cadastra_questao.aspx';", True)


    End Sub

End Class

No próximo post teremos como alterar e excluir as questões, aguardem.

Nenhum comentário:

Postar um comentário