Avatar billede webnord Novice
10. august 2003 - 17:16 Der er 6 kommentarer og
1 løsning

Validering af et tekstfelt

Jeg har opslag i en db.
herefter skal jeg indtaste et nummer, hvis det indtastede nummer er ens med et af de opslået værdier skal jeg have en fejlmeddelse, men hvor dan gør jeg det??

<% Dim liste, arrliste

åbner db'en

SQLstmt = "SELECT * FROM KatalogHerre ORDER BY katalogID;"
Conn.Execute (SQLstmt)

Set rs = conn.Execute(SQLstmt)
  %>

her laves en tabel

    <%

  DO WHILE NOT rs.EOF
    katalogID= rs("katalogID")
    katalogNavn= rs("TypeID")

    %>
    <td width="1"><%=katalogID%></td>
    <td width="1"><%=katalogNavn%></td>
<%
liste = liste &"," & katalogID
arrliste = Split(liste,",")

    rs.MoveNext
  LOOP
  RS.Close

<form method="POST" action="gem_type_herre.asp">
her er et tekstfelt.

Nu sætter jeg en værdi ind i tabellen men den værdi skal valideres så den nye værdi skal være forskelligt fra dem i db'en.
Jeg regner med at jeg kan bruge mit array..
Falcon
Avatar billede eagleeye Praktikant
10. august 2003 - 17:19 #1
Du kan tjekke på om den findes i forvejen med en select og rs.


str = Request.form("feltnavn")
SQL = "SELECT * FROM tabelnavn WHERE kolonne = '" & str & "'"
Set rs = CONN.Execute(SQL)
if rs.EOF then
  'OK indsæt den værdi findes ikke i forvejen

else
  Response.write "Den værdi findes i forvejen"
end if
Avatar billede medions Nybegynder
10. august 2003 - 17:19 #2
Dette er den forkerte kategori! -Opret dit spm under ASP!

//>Rune
Avatar billede medions Nybegynder
10. august 2003 - 17:20 #3
eagleeye> Venligst lad vær med at svare på ASP spm's i VBScript kategorien!

//>Rune
Avatar billede webnord Novice
10. august 2003 - 18:47 #4
taker, men jeg får fl.g. fejl
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

til medions - jeg er da under script / asp eller hva?
Avatar billede medions Nybegynder
10. august 2003 - 18:48 #5
Prøv sådan her:

str = Request.form("feltnavn")
SQL = "SELECT * FROM tabelnavn WHERE kolonne = " & str
Set rs = CONN.Execute(SQL)
if rs.EOF then
  'OK indsæt den værdi findes ikke i forvejen

else
  Response.write "Den værdi findes i forvejen"
end if

Ja, nu er du, men det er oxo fordi spm'et lige er blevet flyttet over til den rigtige kategori!

//>Rune
Avatar billede eagleeye Praktikant
10. august 2003 - 18:52 #6
Ja hvis din kolonne er tal kolonne skal det være uden ' omkring
Avatar billede webnord Novice
10. august 2003 - 18:58 #7
har fundet ud af det, var meget tæt på din løsning takker
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