webForumDet fria alternativet

Min första riktiga asp.net kreation!

.NET

3 svar · 331 visningar · startad av Compusa

Medlem sedan jan. 20023 327 inlägg
Frågan#1

Eftersom jag är nybörjare på asp.net så skulle det vara kul att få sin kod kommenterad av er som befinner er på en höre kunskapsnivå? Misstag, dålig kodning etc vill bli förbättras så alla synpunkter om min första kreation i asp.net mottages varmt!

Sidan finns på: http://www.compusa.webb.se

Här har ni koden till formuläret, dvs min första asp.net kreation, observera att detta endast är ett utkast!

<%@ Page Language="VB" %>
<script runat="server">

    Sub Page_Load(obj As Object, e As EventArgs)
      validPanel.Visible = False
      lbRubrik.Text = "&nbsp;Ett Verifieringsexempel"
    End Sub
    
    Sub Submit(obj As Object, e As EventArgs)
      If Page.IsValid Then
        formPanel.Visible = False
        validPanel.Visible = True
        lbRubrik.Text = "&nbsp;Alla data verifierade"
    
        lbFnamn.Text = tbFnamn.Text
        lbEnamn.text = tbEnamn.Text
        lbEmail.Text = tbEmail.Text
        lbAdress.Text = tbAdress.Text
        lbPostnr.Text = tbPostnr.Text
        lbOrt.Text = tbOrt.Text
        lbTelefon.Text = tbTelefon.Text
      End If
    End Sub
    
    Sub Korrigera(obj As Object, e As EventArgs)
      validPanel.Visible = False
      formPanel.Visible = True
    End Sub

</script>
<html>
<head>
</head>
<body>

<font face="verdana" size="2">
  <asp:Label id="lbRubrik" runat="server"
  Font-Bold="True" ForeColor="White"
  BackColor="#dddaa66" Width="100%" Height="25px"/>
</FONT>

<asp:Panel id=formPanel runat="server">

    <form runat="server">
      <font face="verdana" size="2">
        <asp:ValidationSummary id="ValidationSummary1" runat="server"
          DisplayMode="BulletList"/>
      </font>    
        <table border="0">
          <tr>
            <td valign="top" width="100">
              <font face="verdana" size="2">Förnamn:</font> 
            </td>
            <td valign="top" width="250">
              <asp:TextBox id="tbFnamn" runat="server"/>
              <asp:RequiredFieldValidator runat="server"
                ControlToValidate="tbFnamn"
                ErrorMessage="Förnamnet är obligatoriskt"
                Display="None"/>
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">Efternamn:</font> 
            </td>
            <td valign="top">
              <asp:TextBox id="tbEnamn" runat="server"/>
              <asp:RequiredFieldValidator runat="server"
                ControlToValidate="tbEnamn"
                ErrorMessage="Efternamnet är obligatoriskt"
                Display="None"/>
              <asp:CompareValidator runat="server"
                ControlToValidate="tbFnamn"
                ControlToCompare="tbEnamn"
                Type="String"
                Operator="NotEqual"
                ErrorMessage="För- och efternamnet får inte vara identiska"
                Display="None"/>
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">E-post:</font>
            </td>
            <td valign="top">
              <asp:TextBox id="tbEmail" runat="server"/>
              
              <asp:RequiredFieldValidator runat="server"
                ControlToValidate="tbEmail"
                ErrorMessage="Epost-adress är obligatoriskt"
                Display="None"/>
              <asp:RegularExpressionValidator runat="server"
                ControlToValidate="tbEmail"
                ValidationExpression="[\w-]+@[\w-]+\.[\w-]{2,4}"
                Display="None"
                ErrorMessage="E-mail adressen är ogiltig"/>
              <P>
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">Adress:</font>
            </td>
            <td valign="top">
              <asp:TextBox id="tbAdress" runat="server"/>
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">Postnummer:</font>        
            </td>
            <td valign="top">
              <asp:TextBox id="tbPostnr" runat="server" Size="5"/>

              <asp:RequiredFieldValidator runat="server"
                ControlToValidate="tbPostnr"
                ErrorMessage="Postnummer är obligatoriskt"
                Display="None"/>              
              <asp:RegularExpressionValidator runat="server"
                ControlToValidate="tbPostnr"
                ValidationExpression="[0-9]{5}"
                ErrorMessage="Postnumret är ogiltigt"
                Display="None"/>             
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">Stad/Ort:</font>        
            </td>
            <td valign="top">
              <asp:TextBox id="tbOrt" runat="server"></asp:TextBox>
              <P>
            </td>
          </tr>
          <tr>
            <td valign="top">
              <font face="verdana" size="2">Telefon:</font>
            </td>
            <td valign="top">
              <asp:TextBox id="tbTelefon" runat="server" size="11"></asp:TextBox>
            </td>
          </tr>
          <tr>
            <td valign="top" align="right" colspan="2">
              <asp:Button id="btSubmit" onclick="Submit" runat="server" Text="Lägg till"></asp:Button>
            </td>
          </tr>
        </table>
    </form>
</asp:panel>

<asp:Panel id="validPanel" runat="server">
    <font face="verdana" size="2"><P>
    Var god och se efter om uppgifterna du har lämnat i vår formulär är riktiga.<P>
    </FONT>
        <table border="0">
          <tr>
            <td valign="top" width="25">&nbsp;</td>
            <td valign="top" width="300">
              <font face="verdana" size="2">
                <asp:Label id="lbFnamn" runat="server"/>&nbsp;
                <asp:Label id="lbEnamn" runat="server"/><BR>
                <asp:Label id="lbEmail" runat="server"/><P>
                <asp:Label id="lbAdress" runat="server"/><BR>
                <asp:Label id="lbPostnr" runat="server"/><BR>
                <asp:Label id="lbOrt" runat="server"/><P>
                <asp:Label id="lbTelefon" runat="server"/><P>
      
              <FORM runat="server">
                <asp:Button id="btKorrigera" runat="server"
                  Text="Korrigera" OnClick="Korrigera"/>
               &nbsp;&nbsp;&nbsp;
                <asp:Button id="btSave" runat="server"
                  Text="Spara"/>                            
              </FORM>
              </FONT>
            </td>
          </tr>
        </table>
</asp:Panel>

</body>
</html>
Medlem sedan juni 20011 732 inlägg
#2

Jag tycker det ser bra ut och detta är ju inte direkt den typen av funktionalitet som du kan trimma så mycket. Dock är det att föredra att använda code behind.

Medlem sedan sep. 20011 914 inlägg
#3

Ett tips kan ju vara att bestämma vad besökaren får skriva in. Som förnamn och efternamn kan jag nu skriva in siffror, tror inte det är så många som använder siffror i dessa sammanhang. Sen, min epost ser ut så här något@något.något.se och mitt postnummer så här 111 11 de blir inte giltlig enligt dina krav.
Så sätt upp strikta krav för vad användaren får skriva in. Du vill inte ha en massa skit i databasen.

Medlem sedan jan. 20023 327 inlägg
#4

NETwork skrev:

Jag tycker det ser bra ut och detta är ju inte direkt den typen av funktionalitet som du kan trimma så mycket. Dock är det att föredra att använda code behind.

Vad menar du med code-behind? Förklara gärna!

Dino skrev:

Så sätt upp strikta krav för vad användaren får skriva in. Du vill inte ha en massa skit i databasen

Ska bli, har inte gort klar all validering ännu, vill bara få ihop ett litet snabbt test.

Någon som vet hur ett giltigt svenskt tfn-nummer måste se ut?

Detta är bara ett utkast, ännu har jag ju inga funktioner gjorda men det kommer och script lär ju kunna förbättras i hästlängder, bara jag lägger ner lite tid.

472 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
344 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)