Avatar billede tweak Nybegynder
07. juli 2005 - 17:17 Der er 9 kommentarer og
1 løsning

Undgå at sende med feltet Navn

Hejsa,

I min gæstebog er felterne Navn, E-mail og Overskrift forudfyldt med dette, når man så klikker forsvinder teksten og kommer tilbage når man klikker uden for feltet. Jeg vil gerne ha at mine gæster ikke kan sende med disse indtastninger. Min E-mail er ikke et problem, det bliver kontroleret af en funktion, men men jeg kan ikke finde ud af at udelukke ordsætningen "Navn" osv.

Jeg har selv prøvet med:

If Len(strNavn) = "Navn" Then
        strError = "<li>Du skal skrive dit navn!</li>"

Men der virker ikke. Jeg er ikke nogen ørn til asp, for ikke at sige- jeg fatter hat af det.!

I kan se hele koden her:

If Request.Form("Gem") <> "" Then
    strError = ""
    strNavn = Trim(Request.Form("Navn"))
    strEmail = Trim(Request.Form("Email"))
    strOverskrift = Trim(Request.Form("Overskrift"))
    strKommentar = Trim(Request.Form("Kommentar"))

    If Len(strNavn) = 0 Then
        strError = "<li>Du skal skrive dit navn!</li>"
    ElseIf validateEmail(strEmail) = False Then
        strError = "<li>Du skal skrive en gyldig e-mail adresse!</li>"
    ElseIf Len(strKommentar) = 0 Then
        strError = "<li>Du skal skrive en kommentar!</li>"
    End If

    If Len(strError) = 0 Then
        Set rs = Server.CreateObject("ADODB.RecordSet")
        strSQL = "SELECT * FROM Guestbook WHERE (ID = 0)"

        rs.Open strSQL, tempConn, adOpenKeyset, adLockOptimistic
        If (rs.BOF Or rs.EOF) Then
            rs.AddNew
            rs("Navn") = Server.HTMLEncode(strNavn)
            rs("Email") = Server.HTMLEncode(strEmail)
            rs("Overskrift") = Server.HTMLEncode(strOverskrift)
            rs("Kommentar") = Server.HTMLEncode(strKommentar)
            rs("Dato") = Now()
            rs("IP") = IP
            rs.Update
        End If
        rs.Close
        Set rs = Nothing

        Response.Redirect("gb.asp")
    Else
        strError = "<font color=#FF0000>" & strError & "</font>"
        strMode = "add"
    End If
End If

%>
Avatar billede cpufan Juniormester
07. juli 2005 - 17:32 #1
if strnavn = "Navn" then
Avatar billede cpufan Juniormester
07. juli 2005 - 17:34 #2
Else
        strError = "<font color=#FF0000>" & strError & "</font>"
response.write strError       
strMode = "add"
    End If
End If

ellers får du vel ikke skrevet fejlen ud, med mindre du har det et andet sted på siden
Avatar billede tweak Nybegynder
07. juli 2005 - 17:37 #3
cpufan, Mere af koden så jeg kan se hvor du mener.
Avatar billede tweak Nybegynder
07. juli 2005 - 17:38 #4
cpufan, jeg ved ikke hvor jeg skal rette if strnavn = "Navn" then
Avatar billede tweak Nybegynder
07. juli 2005 - 17:43 #5
Hey jeg har fundet ud af det :) øjeblik
Avatar billede cpufan Juniormester
07. juli 2005 - 17:47 #6
If strNavn = "Navn" Then
        strError = "<li>Du skal skrive dit navn!</li>"
end if   
If validateEmail(strEmail) = False Then
        strError = "<li>Du skal skrive en gyldig e-mail adresse!</li>"
end if   
If Len(strKommentar) = 0 Then
        strError = "<li>Du skal skrive en kommentar!</li>"
End If

du kan ikke køre elseif på den anden måde, da du ikke tester på samme felt
Avatar billede tweak Nybegynder
07. juli 2005 - 17:51 #7
okay, men så mangler jeg at den også tester på min overskrift felt.

For pokker jeg glæder mig til det bliver vinter så jeg har tid til at få lært det her.!! Hvis jeg da kan lære det :(

Kan jeg evt. få en allert boks istedt for denne: strError = "<font color=#FF0000>" & strError & "</font>"


Jeg smider gerne nogle flere point hvis det er det.?
Avatar billede tweak Nybegynder
07. juli 2005 - 19:54 #8
Hey, jeg fik overskriften til at virke:

If Request.Form("Gem") <> "" Then
    strError = ""
    strNavn = Trim(Request.Form("Navn"))
    strEmail = Trim(Request.Form("Email"))
    strOverskrift = Trim(Request.Form("Overskrift"))
    strKommentar = Trim(Request.Form("Kommentar"))

if strOverskrift = "Overskrift" then
        strError = "<li>Du skal skrive en overskrift!</li>"
    if strnavn = "Navn" then
        strError = "<li>Du skal skrive dit navn!</li>"
end if
    ElseIf validateEmail(strEmail) = False Then
        strError = "<li>Du skal skrive en gyldig e-mail adresse!</li>"
    ElseIf Len(strKommentar) = 0 Then
        strError = "<li>Du skal skrive en kommentar!</li>"
    End If

Men kan man ikke lave en allert boks istedet for det skidt jeg har, prøv at se: http://digitalife.dk/gb.asp det er ikke ligefrem brugervenligt at skulle til at udfylde det hele engang til hvis man glemmer et felt. :(
Avatar billede tweak Nybegynder
07. juli 2005 - 21:55 #9
cpufan, kan du ikke smide et svar.?
Avatar billede cpufan Juniormester
17. juli 2005 - 20:39 #10
kommer her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester