Skapa en If sats för att kolla om fältet är tomt och om du ska kolla felra fält kan du ju skapa flera If satser som du sedan skapar sessioner i, om man nu kan säga så
typ:
If Request.Form("name") = "" Then
Session("name") = "no"
Response.Redirect "do.asp"
End If
på sidan do.asp kan du ju sedan ha typ:
<%
If Session("name") = "no" Then
Response.Write "Du fyllde inte i något namn!"
End If
%>
För att sedan behålla det som skrivits i boxarna så kan du ju göra typ så här:
Annars kan du ha allt på en sida. Enkelt förklarat:
if request.querystring("do") = "" Then %>
' Kod för formulär
<form action=dennasida.asp?do=something> osv
<input type="text" name="namn" value="<%=Request.Form("namn")%>">
</form>
else
' Skicka in datan i databasen, men kolla först om nåt är tomt
if request.form("Namn") = "" Then
response.write "Du glömde fylla i ditt namn"
else
INSERT INTO bla bla bla
response.redirect "tack.asp"
End if
End if
Namn: <input type="text" name="namn" value="<%=Request.Form("namn")%>">
<%
if request.form("Namn") = "" Then
response.write "<b>Du måste fylla i denna ruta!</b>"
End if
%>
<br>
Hej.
Min åsikt är att du ska tänka om. Det blir mycket smidigare att ha valideringen på samma sida som formuläret. För tänk om din applikation växer och det kanske blir ett hundratal sidor som ska valideras i din hjärna. Då kan det lätt bli svårt att göra en felsökning.
Det var ett tag sen jag höll på med ASP/VBScript men jag skramlade ihop ett exempel på hur jag gjorde mina sidor förut.
[red]
<%@ Language=VBScript%>
<%
'~~~~~~~~~~~~~~~~~~~~~~~
'Here i use Option Explicit, so that i must declare all my variables
Option Explicit
'~~~~~~~~~~~~~~~~~~~~~~~
'Here i set the Response.Buffer to TRUE, so that the hole page renders before it´s beeing send to the client
Response.Buffer = True
'~~~~~~~~~~~~~~~~~~~~~~~
'Here i declare all my variables
Dim strName 'as string = The name
Dim strPassword 'as string = The password
Dim strMessage 'as string = The ErrorMessage to show
'~~~~~~~~~~~~~~~~~~~~~~~
'Here i check if the page is a postback
If Request.Form > "" Then
'Here i populate my variables
strName = Trim(Request.Form("strName"))
strPassword = Trim(Request.Form("strPassword"))
'Here i check if the values are correct
If Not Len(strName) > 0 OR Not Len(strPassword) > 0 Then
strMessage = "Du måste fylla i alla obligatoriska fält"
Call Page
Else
'Here i make an Sql-statement
'Here i send a ok to the page
strMessage = "fasiken va bra det gick"
Call Page
End If
Else
Call Page
End If
Sub Page
%>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en"
"http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html>
<head>
<title>Icaaq</title>
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0" />
</head>
<body>
<div class="shrek">
<form action="<%=Request.ServerVariables("SCRIPT_NAME")%>" method="post">
<%
if strMessage > "" then Response.Write strMessage & "<br/>"
%>
<span class='inputdescriptionreq'>Namn:</span> <input type='text' name='strName' value='<%=strName%>'><br />
<span class='inputdescriptionreq'>Lösenord:</span> <input type='password' name='strPassword'><br />
<input type='submit' name='submit' value='anmäl'/>
</form>
</div>
</body>
</html>
<%
End Sub
%>
[/red]
Nu säger inte jag att detta är det korrekta sättet att arbeta men för mig var det väldigt smidigt och lätt att göra eventuella felsökningar.
Alla tjatar om huyr mycket prestanda det snor av servern!
Men ärligt talat, hur mycket sölar det egentligen ner om man validerar med hjälp av ASP i stället för Javascript?
Men ärligt talat, hur mycket sölar det egentligen ner om man validerar med hjälp av ASP i stället för Javascript?
Det är ganska överkomligt, men det beror såklart på en massa saker. Jag tycker att man skall validera med ASP (gärna i kombination med javascript, som Inferis skriver), eftersom alla klienter inte har javascript aktiverat.
256 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25