5. Erstellen Sie eine Nachrichtenseite ---- Datenvalidierungssteuerung und fügen Sie Daten hinzu
Verwandte Einführung:
Für die Website ist die Richtigkeit der Daten erforderlich. Um einfacher zu überprüfen, ob die von Benutzern eingegebenen Daten korrekt sind, stellt ASP.NET Programmierern Datenvalidierungskontrollen zur Verfügung. Zu den von ASP.NET bereitgestellten Datenvalidierungssteuerelementen gehören: (Hinweis: Um den Code anzuzeigen, haben alle folgenden Codes Leerzeichen nach „<“ und vor „>“. Wir entschuldigen uns für die Unannehmlichkeiten!):
Die | Steuerfunktion |
RequiredFieldValidator | prüft, ob in einem Eingabefeld Daten eingegeben werden. |
RangeValidator |
prüft | , ob die in ein Eingabefeld eingegebenen Daten innerhalb eines bestimmten Bereichs liegen |
Testen Sie, ob ein Eingabefeld gleich, ungleich, größer, nicht kleiner oder kleiner als ist. |
ValidationSummary | listet alle Steuerelemente auf, die den Test nicht bestanden haben |
RegularExpressionValidator |
|
Überprüfen Sie, ob eine Spalte den benutzerdefinierten | Validierungsregeln |
für reguläre Ausdrücke von CustomValidator entspricht |
SCHRITT 1 Designseite <BR>Wir entwerfen zunächst anhand einer Tabelle einen groben Rahmen. Da die COMMENTS-Tabelle in der Datenbank enthält
[Abbildung 5-1 Datenbank-Framework]
COMMENT_ID (automatische Nummer), FIRST_NAME (Text), NACHNAME (Text), TELEPHONE (Text), EMAIL (Text), SUBMIT_DATE (Datum/Uhrzeit), COMMENTS (Notizen), ANSWERED (Boolescher Wert) und andere Felder. Entsprechend den Anforderungen haben wir die Seite wie unten auf der Website gezeigt mit dem Namen reg.aspx gestaltet.
[Abbildung 5-2 Startseite]
Unter diesen kann COMMENT_ID automatisch von ACCESS hinzugefügt werden, und ANSWERED muss nicht vom Benutzer hinzugefügt werden. Der Standardwert von SUBMIT_DATE ist auf Now() gesetzt und ACCESS schreibt automatisch das Datum des hinzugefügten Datensatzes.
Auf der vorherigen ASP-Seite können wir bestehen
um Eingabefelder zur Eingabe von Daten einzurichten. ASP.NET verfügt über ein Textfeld-Steuerelement zum Akzeptieren von Daten. Die Syntax lautet wie folgt:
< asp:textbox id=“…“ runat=“server“ andere Attribute/ >
In DreamweaverMX können Sie klicken Verknüpfungsschaltfläche zum Hinzufügen einer Textfeldsteuerung. Legen Sie im Popup-Dialogfeld die ID, den Textmodus (Dialogfeldtyp), den Tooltip (die Eingabeaufforderung, wenn sich die Maus über dem Steuerelement befindet), das Layout (Stildesign) und die Stilinformationen (zum Festlegen der Eingabe) fest (Textformat und Textfeldrahmenformat), um das Steuerelement festzulegen. Das Bild unten zeigt das Einstellungsdialogfeld des Textfelds.
[Abbildung 5-3 Dialogfeld „Textfeldeinstellungen 1“]
[Abbildung 5-4 Dialogfeld „Textfeldeinstellungen 2“]
[Abbildung 5-5 Dialogfeld „Textfeldeinstellungen 3“]
Da das Datenelement KOMMENTAR die Eingabe einer großen Textmenge erfordert, muss ein Textfeld mit mehreren Eingabezeilen verwendet werden. Stellen Sie einfach den Textmodus auf MultiLine ein und geben Sie die gewünschte Anzahl an Zeilen (Rows) ein.
Um das hinzugefügte Ereignis zu generieren, wird außerdem eine Schaltfläche benötigt. Klicken Sie auf die Registerkarte „Formulare“ und klicken Sie zum Hinzufügen auf die Schaltfläche „Schaltfläche“.
Verwendung der STEP2-Datenvalidierung
Da Vorname, Nachname, Telefonnummer und E-Mail-Adresse eingegeben werden müssen, können Sie das RequiredFieldValidator-Steuerelement hinzufügen, um das Steuerelement zu überprüfen, um zu verhindern, dass der Benutzer die Eingabe vergisst. Da das Steuerelement bei Validierungsfehlern an seiner Stelle Inhalte anzeigt, die die Überprüfung nicht bestehen, sollte das Datenvalidierungssteuerelement an der entsprechenden Stelle platziert werden.
Die Steuersyntax für die RequiredFieldValidator-Datenvalidierung lautet wie folgt:
< asp:RequiredFieldValidato other attributes runat="server" >Fehlermeldung</ asp:RequiredFieldValidator >
oder
< asp:RequiredFieldValidator ErrorMessage="Fehlermeldung" Andere Attribute runat="server"/ >
Nachdem Sie auf „Weitere Tags“ geklickt haben, wählen Sie „Validierungsserver für ASP.NET-Tags“ aus. Sie sehen, dass verschiedene Arten von Datenvalidierungssteuerelementen zur Auswahl stehen. Wir müssen das Validierungssteuerelement asp:RequiredFieldValidator hinter dem Eingabefeld „Vorname“ hinzufügen.
Im Einstellungsfenster des RequiredfieldValidator-Steuerelements ist Zu validierendes Steuerelement die ID des Eingabesteuerelements, das diesem Datenvalidierungssteuerelement zugeordnet ist, und Fehlermeldung ist die Meldung, die angezeigt wird, wenn die Datenvalidierung fehlschlägt. Gleichzeitig können wir den gewünschten Stil auswählen, indem wir Layout- und Stilinformationen festlegen.
[Abbildung 5-6 Auswahl der Validierungssteuerung]
[Abbildung 5-7 Dialogfeld „RequiredfieldValidator-Steuerungseinstellungen“]
Fügen Sie gleichzeitig ein weiteres RequiredFieldValidato-Datenvalidierungssteuerelement mit derselben Methode hinter dem Eingabefeld Last_Name hinzu. Jetzt können wir die Seite speichern und in der Vorschau anzeigen. Wenn in den Eingabefeldern „Vorname“ und „Nachname“ keine Daten eingegeben werden und auf die Schaltfläche „Senden“ geklickt wird, wird eine Meldung zum Verifizierungsfehler angezeigt. Wie in Abbildung 5-8 dargestellt.
Aber oft müssen wir gültige Daten überprüfen. Beispielsweise muss die Postleitzahl 6-stellig sein und die eingegebene E-Mail-Adresse muss in einer bestimmten Form vorliegen. Hier müssen Sie RegularExpressionValidator verwenden, um die Gültigkeit der Daten zu überprüfen. Auf dieser Registrierungsseite können sowohl Telefon als auch E-Mail dieses Steuerelement zur Verifizierung verwenden.
[Abbildung 5-8 Dialogfeld „RequiredfieldValidator“]
[Abbildung 5-9 Eigenschaften der E-Mail-Einstellung]
Klicken Sie ähnlich wie beim Hinzufügen des Validierungssteuerelements „RequiredfieldValidator“ auf „Weitere Tags …“, um das Hinzufügen des Datenvalidierungssteuerelements auszuwählen. Der Unterschied besteht im Festlegen des Validierungsausdrucks. Da das Telefon 7–10 Ziffern eingeben muss, muss es wie folgt eingestellt werden:
[0-9]{7,10}
Seine Syntax ist wie folgt:
[]: Wird verwendet, um akzeptable Zeichen zu definieren. az bedeutet beispielsweise, dass Kleinbuchstaben „a“ bis „z“ akzeptable Zeichen sind, a-zA-Z bedeutet, dass alle Buchstaben akzeptabel sind, und 0-9 bedeutet, dass alle Buchstaben akzeptabel sind. Nummer.
{}: wird verwendet, um die Anzahl der Zeichen zu definieren, die eingegeben werden müssen. {7,10} bedeutet, dass 7-10 Zeichen eingegeben werden können, {0,} bedeutet, dass 0-unbegrenzte Zeichen akzeptiert werden können.
'.': Zeigt die Eingabe eines beliebigen Zeichens an. .{0,} bedeutet, dass 0 bis unendlich viele Zeichen zulässig sind.
|: Gibt OR (oder) an, zum Beispiel bedeutet [A-Za-z]{3}|[0-9]{3}, dass 3 englische Buchstaben oder 3 Zahlen akzeptiert werden können
(): Um das Lesen zu erleichtern, werden Zeichenfolgen, die das Symbol | enthalten, normalerweise in () eingeschlossen. Zum Beispiel ([A-Za-z]{3}|[0-9]{3}).
: Wenn es spezielle Symbole wie [], {}, (), | usw. enthält, muss vor diesen Zeichenfolgen hinzugefügt werden.
Im Folgenden sind einige der am häufigsten verwendeten Beispiele aufgeführt:
E-Mail: .{1,}@.{1,}/..{1}
Telefon (einschließlich Vorwahl): ([0-9]{3,4}))[0-9]{7,8}
Obwohl es keine Garantie dafür gibt, dass es sich bei der Benutzereingabe um die tatsächlichen Daten handelt, kann die Validierungskontrolle sicherstellen, dass das Format korrekt ist.
[Abbildung 5-10 Vorschauseite]
Die Eigenschaften des CompareValidator-Steuerelements werden wie folgt festgelegt:
„Kontrolle zum Vergleichen“ | legt die Kontrolle fest, mit der es verglichen wird. „ |
Kontrolle zum Validieren“ | legt die Kontrolle fest, mit der es verknüpft ist |
Zu vergleichender Wert | legt den verglichenen Wert fest. |
Der Operator | legt die Vergleichsbeziehung fest ( gleich, ungleich, größer als, größer oder gleich, kleiner als, kleiner als oder gleich ). |
Typ | Vergleichsdatentyp: |
Fehlermeldung | zeigt Informationen an |
[Abbildung 5-11 Dialogfeld „CompareValidator-Einstellungen“]
Die Einstellungsmethode von CustomValitor ähnelt anderen Steuerelementen, zur Überprüfung der Daten ist jedoch die handgeschriebene Funktion OnServerValidate (in Events) erforderlich.
[Abbildung 5-12 Dialogfeld „CustomValitor-Einstellungen“]
Zum Beispiel
< asp:CustomValidator id="CusValid" runat="server" ControlToValidate=Steuerelementname OnServerValidate="TheFunction" >Fehlermeldung</ asp:CustomValidator >
<script language=“vb“ runat=“server“ >
Funktion TheFunction(sender as object,,value as string) als Boolean
……..
zurückkehren…
Funktion beenden
</ /script >
Dieses Steuerelement ruft die Funktion TheFuncion auf. Wenn false zurückgegeben wird, wird eine Fehlermeldung gemeldet.
RangeValidator-Steuerelement
[Abbildung 5-12 Dialogfeld „RangeValidatorr-Einstellung“]
Sie können den Wertebereich über „Mininum Value“ und „Maxinum Value“ festlegen. Gleichzeitig können Sie den Vergleichstyp über den Typ festlegen, z. B. „Zeichenfolge“, „Ganzzahl“ usw. Andere Einstellungen ähneln denen für andere Komponenten.
Es gibt auch eine Komponente: ValidationSummary. Unter diesen legt HeaderText den Kopfzeilentext und DisplayMode den Anzeigemodus fest. Seine spezifischen Eigenschaften sind wie folgt:
Bedeutung | des Attributwerts | :
List BulletList SingleParagraph | ErrorMessage wird in separaten Zeilen angezeigt. ErrorMessage wird in separaten Zeilen angezeigt . |
[Abbildung 5-13 Dialogfeld zur Einstellung der ValidationSummary-Eigenschaft]
Im Anhang finden Sie den Quellcode der Hauptprogrammabschnitte:
< table width="75%" height="594" border="1" cellpadding="1" cellpacing="0" bordercolor="#999999" >
<tr>
< td width="22%" height="22" >Vorname< /td >
< td width="38%" >< asp:textbox BackColor="#CCCCCC" ForeColor="#0033FF" ID="first" runat="server" TextMode="SingleLine" ToolTip="Bitte geben Sie den Vornamen ein" MaxLength ="40" BorderWidth="1" width="200"/ >< /td >
< td width="40%" >< asp:requiredfieldvalidator BackColor="#CCCCCC" ControlToValidate="first" ErrorMessage="RequiredField" ForeColor="#FF0000" ID="validname" runat="server" / > < /td >
< /tr >
<tr>
< td height="22" >Nachname< /td >
< td >< asp:textbox BackColor="#CCCCCC" ForeColor="#0033FF" ID="Lastname" runat="server" TextMode="SingleLine" Width="200" ToolTip="Bitte geben Sie den Nachnamen ein" BorderWidth= "1"/ >< /td >
< td >< asp:requiredfieldvalidator BackColor="#CCCCCC" ControlToValidate="Lastname" ErrorMessage="RequiredField" ForeColor="#FF0000" ID="vailLast" runat="server" / > </ /td >
< /tr >
<tr>
< td height="22" >Telefon< /td >
< td >< asp:textbox BackColor="#CCCCCC" BorderWidth="1" ForeColor="#0066FF" ID="telephone" runat="server" TextMode="SingleLine" ToolTip="Bitte geben Sie Ihre Telefonnummer ein" Width=" 200" / >< /td >
< td > < asp:regularexpressionvalidator BackColor="#CCCCCC" ControlToValidate="telephone" ErrorMessage="7-10 Nummern erforderlich" ForeColor="#FF0000" ID="vailtel" runat="server" ValidationExpression="[0-9 ]{7,10}" / > < asp:requiredfieldvalidator BackColor="#CCCCCC" ControlToValidate="telephone" ErrorMessage="RequiredField" ForeColor="#FF0000" ID="vailtel2" runat="server" / >< /td >
< /tr >
<tr>
< td height="22" >E-Mail< /td >
< td >< asp:textbox BackColor="#CCCCCC" BorderWidth="1" ForeColor="#0033FF" ID="email" runat="server" TextMode="SingleLine" ToolTip="Bitte geben Sie Ihre E-Mail-Adresse ein" Breite ="200"/ >< /td >
< td >< asp:regularexpressionvalidator BackColor="#CCCCCC" ControlToValidate="email" ErrorMessage="E-Mail-Adresse ungültig machen" ForeColor="#FF0000" ID="valiemail" runat="server" ValidationExpression=".{1,}@ .{3,}" / > < asp:requiredfieldvalidator BackColor="#CCCCCC" ControlToValidate="email" ErrorMessage="Required Field" ForeColor="#FF0000" ID="valiemail2" runat="server" / > < /td >
< /tr >
<tr>
< td height="22" colspan="3" >< div align="center" >Kommentare< /div >< /td >
< /tr >
<tr>
< td height="188" colspan="3" >< div align="center" >
< asp:textbox BackColor="#CCCCCC" BorderWidth="1" ForeColor="#0033FF" ID="Comments" Rows="16" runat="server" TextMode="MultiLine" ToolTip="Bitte geben Sie die Breite der Kommentare ein ="400"/ >
< /div >
< div align="center" > < br >
< /div >< /td >
< /tr >
<tr>
< td height="71" colspan="3" >< div align="center" >
< asp:validationsummary BackColor="#CCCCCC" DisplayMode="BulletList" ForeColor="#FF0000" HeaderText="Falscher Inhalt enthält:" ID="valSum" runat="server" ToolTip="Error" / >
< /div >< /td >
< /tr >
<tr>
< td height="22" colspan="3" >< input type="submit" name="Submit" value="Submit" >
</ /td >
< /tr >
< /table >
Der Stil ist wie folgt:
[Abbildung 5-14 Vorschau]
SCHRITT 3 Datenergänzung
Die Funktion zum Hinzufügen von Daten ist relativ einfach. Wir können die Funktion zum Hinzufügen von Daten über den Assistenten festlegen und DreamweaverMX den Code automatisch hinzufügen lassen. Klicken Sie in der Anwendung auf die Registerkarte „Serververhalten“ und dann auf die Schaltfläche „+“, um „Datensatz einfügen“ auszuwählen (Abbildung 5-15).
Im Popup-Dialogfeld müssen Sie zunächst die angeschlossene Datenquelle ermitteln. Wenn es nicht in der Liste gefunden wird, können Sie auf die Schaltfläche „Definieren“ klicken, um die Datenquelle festzulegen (Abbildung 5-16). Mithilfe von „In Tabelle einfügen“ wird die Tabelle festgelegt, zu der Daten hinzugefügt werden sollen. In „Spalten“ kann das Textfeld mit der entsprechenden Datenquelle abgeglichen und der Datentyp festgelegt werden. Bei Erfolg legt „Gehe zu“ die Seite fest, zu der gesprungen werden soll, wenn die Daten erfolgreich hinzugefügt wurden. „Bei Fehler“ kann „Gehe zu“ festlegen, zu welcher Seite gesprungen werden soll, wenn das Hinzufügen von Daten fehlschlägt. Gleichzeitig können wir auch „Debugging-Informationen bei Fehler anzeigen“ auswählen, um die Fehlermeldung festzulegen, die angezeigt werden soll, wenn das Hinzufügen von Daten fehlschlägt.
[Abbildung 5-15 Auswahl „Datensatz einfügen“]
[Abbildung 5-16 Einstellungen zum Hinzufügen von Daten]
Schauen wir uns den hinzugefügten Code an:
<MM:Einfügen
runat="server"
CommandText='< %# "INSERT IN TO COMMENTS (COMMENTS, EMAIL, FIRST_NAME, NACHNAME, TELEPHONE) VALUES (?, ?, ?, ?, ?)" % >'
ConnectionString='< %# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_location") % >'
DatabaseType='< %# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_location") % >'
Expression='< %# Request.Form("MM_insert") = "form1" % >'
CreateDataSet="false"
SuccessURL='< %# "index.htm" % >'
FailureURL='< %# "reg.aspx" % >'
Debug="true"
>
<Parameter>
< Parameter Name="@COMMENTS" Value='< %# IIf((Request.Form("Comments") < > Nothing), Request.Form("Comments"), "") % >' Type="WChar" />
< Parameter Name="@EMAIL" Value='< %# IIf((Request.Form("email") < > Nothing), Request.Form("email"), "") % >' Type="WChar" />
< Parameter Name="@FIRST_NAME" Value='< %# IIf((Request.Form("first") < > Nothing), Request.Form("first"), "") % >' Type="WChar" />
< Parameter Name="@LAST_NAME" Value='< %# IIf((Request.Form("Lastname") < > Nothing), Request.Form("Lastname"), "") % >' Type="WChar" />
< Parameter Name="@TELEPHONE" Value='< %# IIf((Request.Form("telephone") < > Nothing), Request.Form("telephone"), "") % >' Type="WChar" />
< /Parameter >
< /MM:Einfügen>
MM: „Insert“ ist die Bezeichnung, die Dreamweaver zum Hinzufügen der Datenbank verwendet, und „Parameter“ ist der Wert, der zum Angeben des Parameters verwendet wird.
Der vorherige Code wird verwendet, um den Datenbanklink und die Seite anzugeben, zu der nach erfolgreichem Hinzufügen gesprungen werden soll. Wenn das Hinzufügen fehlschlägt, wird eine Fehlermeldung sowie die zugehörige Tabelle angezeigt.
Diese werden von MacroMedia selbst entwickelt und erfordern die Unterstützung einiger Komponenten von Macromedia. Sie unterscheiden sich vom Standardcodeformat vieler ASP.net im Internet. Bitte verstehen Sie das auf diesem Code basierende Standardcodeformat von ASP.net nicht falsch, wenn Sie sich auf den Code beziehen. Das Standardcodeformat finden Sie unter www.gotdotnet.com. Wenn Sie Standardcode schreiben möchten, können Sie WebMatrix verwenden. Download-Adresse: http://www.asp.net/webmatrix/download.aspx?tabindex=4