validerings problem
HEj jeg har et problem med min validering, hvor at hvis jeg køre den igennem med alle felte valider, men den sætter den stadig ind i databasen, samtidig så laver den en fejl hvis et af felterne er tomme, her tror jeg problemet er at den går til databasen før valideringen, så den laver ne database fejl.Så hvis jeg kunne få den til at tjekke valideringen før den går til databasen som dn gør så kunne det virke.
Her er hele koden selv om den er lang, NOGLE FORSLAG til hvorfor det går galt.
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="iso-8859-1" debug="true" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.IO" %>
<link href="../image/dhl.css" rel="stylesheet" type="text/css">
<div class="mainFont">
<script runat="server">
void Page_Load()
{
if(IsPostBack){
Validate();
}
if(!IsPostBack)
{
LoadData();
}
}
void LoadData()
{
OleDbConnection objConnection;
OleDbCommand objCommand;
OleDbDataAdapter OurDataAdapter;
objConnection = new OleDbConnection(@"Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + Server.MapPath("/DHL/database/dhl.mdb"));
objConnection.Open();
objCommand = new OleDbCommand ("SELECT * FROM Afdeling ORDER BY aNavn DESC" ,objConnection);
drpData.DataTextField = "aNavn";
drpData.DataSource = objCommand.ExecuteReader(CommandBehavior.CloseConnection);
drpData.DataBind();
drpData.Items.Insert(0, "-- Vælg afdeling --");
objConnection.Close();
}
void Insert(object Sender, EventArgs E)
{
string strmLonNr, strmNavn, strmAdresse, strmPost, strmBy, strmTlf, strmMobil, strmEmail, strmStilling, strmLokalNr, strmChef, strmAnsat, strmAfdeling, strmFodelsesdag;
string strSQL;
DropDownList myDrpBox;
myDrpBox = (DropDownList) tbmAfdeling.FindControl("drpData");
strmLonNr = tbmLonNr.Text;
strmNavn = tbmNavn.Text;
strmAdresse = tbmAdresse.Text;
strmPost = tbmPost.Text;
strmBy = tbmBy.Text;
strmTlf = tbmTlf.Text;
strmMobil = tbmMobil.Text;
strmEmail = tbmEmail.Text;
strmStilling = tbmStilling.Text;
strmLokalNr = tbmLokalNr.Text;
strmChef = tbmChef.Text;
strmAnsat = tbmAnsat.Text;
strmAfdeling = myDrpBox.SelectedItem.Value.ToString();
strmFodelsesdag = tbmFodelsesdag.Text;
strSQL = "INSERT INTO mArbejder (mLonNr, mNavn, mAdresse, mPost, mBy, mTlf, mMobil, mEmail, mStilling, mLokalNr, mChef, mAnsat, mAfdeling, mFodelsesdag) Values (";
strSQL += strmLonNr + ", '";
strSQL += strmNavn + "', '";
strSQL += strmAdresse + "', ";
strSQL += strmPost + ", '";
strSQL += strmBy + "', ";
strSQL += strmTlf + ", ";
strSQL += strmMobil + ", '";
strSQL += strmEmail + "', '";
strSQL += strmStilling + "', ";
strSQL += strmLokalNr + ", '";
strSQL += strmChef + "', '";
strSQL += strmAnsat + "', ";
strSQL += strmAfdeling + ", '";
strSQL += strmFodelsesdag + "')";
//Response.Write(strSQL);
OleDbConnection myConnection = new OleDbConnection(@"Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + Server.MapPath("/DHL/database/dhl.mdb"));
myConnection.Open();
OleDbCommand myCommand = new OleDbCommand(strSQL, myConnection );
myCommand.ExecuteNonQuery();
myConnection.Close();
lblBesked.Text ="Du har oprettet medarbejder: " + tbmNavn.Text;
btInsert.Enabled=false;
}
void Blank(Object Sender, EventArgs e)
{
tbmLonNr.Text="";
tbmNavn.Text="";
tbmAdresse.Text="";
tbmPost.Text="";
tbmBy.Text="";
tbmTlf.Text="";
tbmMobil.Text="";
tbmEmail.Text="";
tbmStilling.Text="";
tbmLokalNr.Text="";
tbmChef.Text="";
tbmAnsat.Text="";
tbmFodelsesdag.Text="";
btInsert.Enabled=true;
}
void Udskriv(Object Sender, EventArgs e)
{
Response.Redirect("mArbejder_admin.aspx");
}
</script>
<form runat="server">
<font class="headerfont">Indtast en ny medarbejder.</font>
Der skal indtastes noget i alle felter.<br />
<table width="100%">
<tr>
<td width="110">Løn nr:</td>
<td><asp:textbox id="tbmLonNr" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmLonNr" ErrorMessage="Indtast Løn nummer kun af tal" runat="server" Display="Dynamic" /></td>
</tr>
<tr>
<td width="110">Navn:</td>
<td><asp:textbox id="tbmNavn" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmNavn" ErrorMessage="Indtast det fulde navn" runat="server" Display="Dynamic" /></td>
</tr>
<tr>
<td width="110">Adresse:</td>
<td><asp:textbox id="tbmAdresse" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmAdresse" ErrorMessage="Indtast den fulde adresse" runat="server" Display="Dynamic" /></td>
</tr>
<tr>
<td width="110">Post nr:</td>
<td><asp:textbox id="tbmPost" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmPost" ErrorMessage="Indtast postnummer" runat="server" Display="Dynamic" />
<asp:RegularExpressionValidator ControlToValidate="tbmPost" ValidationExpression="[0-9]{4}" Display="Dynamic" ErrorMessage="Indtast postnummer som xxxx" runat="server" /></td>
</tr>
<tr>
<td width="110">By:</td>
<td><asp:textbox id="tbmBy" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmBy" ErrorMessage="Indtast Bynavn" runat="server" Display="Dynamic" /></td>
</tr>
<tr>
<td width="110">Tlf:</td>
<td><asp:textbox id="tbmTlf" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmTlf" ErrorMessage="Indtast Tlf-nummer som xxxxxxxx" runat="server" Display="Dynamic" />
<asp:RegularExpressionValidator ControlToValidate="tbmTlf" ValidationExpression="[0-9]{8}" ErrorMessage="Indtast tlf nummer som xxxxxxxx" Display="Dynamic" runat="server" /></td>
</tr>
<tr>
<td width="110">Mobil:</td>
<td><asp:textbox id="tbmMobil" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmMobil" ErrorMessage="Indtast Mobil-nummer som xxxxxxxx" Display="Dynamic" runat="server" />
<asp:RegularExpressionValidator ControlToValidate="tbmMobil" ValidationExpression="[0-9]{8}" Display="Dynamic" ErrorMessage="Indtast Mobil nummer som xxxxxxxx" runat="server" /></td>
</tr>
<tr>
<td width="110">E-mail:</td>
<td><asp:textbox id="tbmEmail" runat="server" Width="300px"/>
<asp:RequiredFieldValidator ControlToValidate="tbmEmail" ErrorMessage="Indtast gyldig email" runat="server" Display="Dynamic" />
<asp:RegularExpressionValidator runat="server" ControlToValidate="tbmEmail" ValidationExpression=".*@.*\..*" ErrorMessage="Du skal indtaste en gyldig email adresse" Display="Dynamic" /></td>
</tr>
<tr>
<td width="110">Stilling:</td>
<td><asp:textbox id="tbmStilling" runat="server" Width="300px"/>
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ControlToValidate="tbmStilling" ErrorMessage="Indtast stillings betegnelse" /></td>
</tr>
<tr>
<td valign="top">Lokal nr:</td>
<td valign="top"><asp:textbox ID="tbmLokalNr" Width="300px" runat="server"/>
<asp:RequiredFieldValidator runat="server" ControlToValidate="tbmLokalNr" Display="Dynamic" ErrorMessage="Indtast lokal nummer som tal" /></td>
</tr>
<tr>
<td valign="top">Chef:</td>
<td valign="top"><asp:textbox ID="tbmChef" Width="300px" runat="server"/>
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ControlToValidate="tbmChef" ErrorMessage="Skriv chefens navn" /></td>
</tr>
<tr>
<td valign="top">Ansættelse dato:</td>
<td valign="top"><asp:TextBox ID="tbmAnsat" Width="300" runat="server"/> <font class="mainFont2">Dato indtastes som xx-xx-xxxx</font>
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ControlToValidate="tbmAnsat" ErrorMessage="Indtast dato som xx-xx-xxxx" />
<asp:RangeValidator ControlToValidate="tbmAnsat" runat="server" Display="Dynamic" Type="Date" MinimumValue="1-1-1930" MaximumValue="31-12-2154" ErrorMessage="Indtast gyldig dato som xx-xx-xxxx" /></td>
</tr>
<tr>
<td valign="top">Afdeling:</td>
<td valign="top"><asp:panel ID="tbmAfdeling" runat="server">
<asp:dropdownlist ID="drpData" DataTextField="aNavn" DataValueField="aId" Width="300px" runat="server"/>
</asp:panel></td>
</tr>
<tr>
<td width="110">Fødelsesdag:</td>
<td><asp:textbox id="tbmFodelsesdag" runat="server" Width="300px"/><font class="mainFont2">Dato indtastes som xx-xx-xxxx</font>
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ControlToValidate="tbmFodelsesdag" ErrorMessage="Indtast dato som xx-xx-xxxx" />
<asp:RangeValidator ControlToValidate="tbmFodelsesdag" runat="server" Display="Dynamic" Type="Date" MinimumValue="1-1-1930" MaximumValue="31-12-2154" ErrorMessage="Indtast gyldig dato som xx-xx-xxxx" /></td>
</tr>
<tr>
<td colspan="2">
<asp:Button ID="btInsert" runat="server" Text="Indsæt medarbejder" OnClick="Insert"/>
<asp:button ID="btBlank" OnClick="Blank" runat="server" Text="Slet felter"/>
<asp:button ID="btUdskriv" OnClick="Udskriv" runat="server" Text="Gå til medarbejder admin"/>
<br />
<br />
<br />
<asp:label ID="lblBesked" runat="server" Font-Bold="true"/>
<br><span id="OurSpan" runat="server" />
</td>
</tr>
</table>
</form>
</div>
