/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Confirm password felt
Fra : freak


Dato : 03-08-05 09:23

Jeg vil gerne lave et felt hvor man skal bekræfte sit password og
der kommer en alert box op hvis det ikke passer sammen med det
først indtastede password, hvordan gør jeg det?
Jeg har prøvet med denne sætning, men den giver fejlmelding.

strSQL = "Insert into bruger (User,Name,Password,Email)
values('" & Request.Form("User") & "','" & Request.Form("Name") &
"','" & Request.Form("Password") <> Request.Form("Password2")
Then response.write "fejl" else response.write "ok" & "','" &
Request.Form("Email") & "')"

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
JonZ (03-08-2005)
Kommentar
Fra : JonZ


Dato : 03-08-05 11:08

freak wrote in dk.edb.internet.webdesign.serverside.asp:
> strSQL = "Insert into bruger (User,Name,Password,Email)
> values('" & Request.Form("User") & "','" & Request.Form("Name") &
> "','" & Request.Form("Password") <> Request.Form("Password2")
> Then response.write "fejl" else response.write "ok" & "','" &
> Request.Form("Email") & "')"


Måden du gør det på udgør en risiko for sql-injektion, derfor bør du
køre form felter igennem en replace sætning først. f.eks.

navn = replace(request.form("name"), "'", "''")
password = replace(request.form("password"), "'", "''")

sådan gør du med alle form felter, for at undgå sql-injektion, for
at tjekke password kan du lave følgende sætning.

If request.form("password") <> request.form("password2") then
response.redirect "din fom side.asp"
end if

Ovenstående kan også bruges til at tjekke, at der overhovedet er
blevet skrevet noget, sådan her:

if request.form("navn") = "" then
response.redirect "din form side.asp"
end if

Husk når du har kørt alle dine form felter igennem en replace er det
resultattet du skal lægge ind i den database. Sådan her

strsql = "insert into bruger (navn, password )"

strsql = strsql & " values ('" & navn & "' , '" & password & "')"

objconn.execute (strsql)

Håber du forstod lidt af det, ellers må du skrive igen.

Hilsen JonZ

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

JonZ (03-08-2005)
Kommentar
Fra : JonZ


Dato : 03-08-05 11:17

freak wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg vil gerne lave et felt hvor man skal bekræfte sit password og
> der kommer en alert box op hvis det ikke passer sammen med det
> først indtastede password, hvordan gør jeg det?
> Jeg har prøvet med denne sætning, men den giver fejlmelding.

Ups glemte lige noget. Hvis den der skriver noget, skal have at vide
hvad der er forkert, kan du øverst på din form side indsætte
følgende:

<font color="red"><b><%=Request.querystring("error")%></b></font>

I mit første svar laver jeg en redirect, der kan du så skrive
følgende:

if request.form("name") = "" then
response.redirect "din form side.asp?error=Du skal skrive et navn"
end if

Hilsen JonZ

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Adam Ellesøe (03-08-2005)
Kommentar
Fra : Adam Ellesøe


Dato : 03-08-05 11:26

Der er 2 fejl i det du laver: den første.. du prøver at afvikle asp kode i
din sql..
nr 2: asp er et server sprog (server-side), og kan derfor ikke (ikke særligt
næmt/smart) afvikle alert bokse... Det er smartest hvis din sammenligning
finder sted på klientens maskine (client-side)... Så spørg her
dk.edb.internet.webdesign.clientside
og lav så lige den sql om
MVH
Adam G. Ellesøe



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste