07. maj 2003 - 14:24
Der er
22 kommentarer og 1 løsning
JAVASCRIPT og if sætninger til validering af variabel
hejse, jeg har nogle variable, som jeg requester fra en anden side, og jeg er 100% sikker på der står det samme i dem, da jeg skriver dem ud på skærmen.Alligevel kan det ikke lade sig gøre for mig at lave en sammenligning af dem, og validere at de er ens. ********************************** if(nytpassword == nytpasswordcopy) { Response.Write("<table><tr><td>juhuu</td></tr>") } ********************************* er det fordi jeg griber det forkert an i javascript? eller er der en anden metode til lat sammenligne to værdier. Håber der er nogen som kan hjælpe mig.
Annonceindlæg fra Computerworld
var nytpassword; var nytpasswordcopy; nytpassword=Request("nytpassword"); nytnytpasswordcopy=Request("nytpasswordcopy"); if(nytpassword == nytpasswordcopy) { Response.Cookies("pass")=nytpassword; Response.Cookies("passcopy")=nytpasswordcopy; Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'brugerOprettet.asp';") Response.Write ("</script>") }
var det det du ville se? ellers må du skrive hvad du specifikt ønsker at se af kode :D
lav nytpassword=Request("nytpassword"); nytnytpasswordcopy=Request("nytpasswordcopy"); om til nytpassword=Request("nytpassword"); nytpasswordcopy=Request("nytpasswordcopy"); nytnytpasswordcopy (nytnyt)
var nytpassword; var nytpasswordcopy; nytpassword = Request("nytpassword"); nytnytpasswordcopy = Request("nytpasswordcopy"); if(nytpassword == nytpasswordcopy){ Response.Cookies("pass")=nytpassword; Response.Cookies("passcopy")=nytpasswordcopy; Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'brugerOprettet.asp';") Response.Write ("</script>") }
lidt for hurtigt sådan: var nytpassword; var nytnytpasswordcopy; nytpassword = Request("nytpassword"); nytnytpasswordcopy = Request("nytpasswordcopy"); if(nytpassword == nytpasswordcopy){ Response.Cookies("pass") = nytpassword; Response.Cookies("passcopy") = nytnytpasswordcopy; Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'brugerOprettet.asp';") Response.Write ("</script>") }
var nytpassword; var nytnytpasswordcopy; nytpassword = Request("nytpassword"); nytnytpasswordcopy = Request("nytpasswordcopy"); if(nytpassword == nytnytpasswordcopy){ Response.Cookies("pass") = nytpassword; Response.Cookies("passcopy") = nytnytpasswordcopy; Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'brugerOprettet.asp';") Response.Write ("</script>") }
jeg kender kun lidt til henholdsvis JS og ASP, men har lige observeret en ting: Du henter "nytpasswordcopy" v.h.a. en request og ligger den over i nytnytpasswordcopy, skal du så ikke også skrive: if(nytpassword == nytnytpasswordcopy){ Istedet for: if(nytpassword == nytpasswordcopy){
ja, mm12010, der opdagede du fejlen, eneste fejl var nemlig at nytnytpasswordcopy = Request("nytpasswordcopy"); var med nytnyt, og ud af resten af scriptet ser det ud til at det tiltænkte var at variablen skulle hedde nytpasswordcpoy og ike nytnytpasswordcpoy, så hvorfor rette resten af scriptet til at passe til et utilsigtet variabelnavn fremfor blot at rette variabelnavnet??
jakobclausen > nemlig, se Svar: fri-hash 07/05-2003 14:38:03
fri-hash >> Undskyld, det havde jeg ikke set
herman01753 >> Det er bedre at bruge nogle mere sigende navne, da det ofte kan forhindre fejl.
det virker desværre heller ikke. Selvom jeg retter det, grunden til det, skyldes at jeg har prøvet at rette variabelnavne tidligere for at eliminere fejl, en ekelt smutter kan jeg se. Men desværre... mi side er væsentlig større, det er kun et uddrag, jeg poster lige hele koden. ********************************************************************** <%@LANGUAGE="javascript"%> <html> <head> <% var conn = Server.CreateObject('ADODB.Connection'); conn.Open(Application('dabdb03_ConnectionString'), Application('dabdb03_RuntimeUserName'), Application('dabdb03_RuntimePassword')); %> <title>Fodboldfeber.dk</title> </head> <body> <% //javascriptkode begynder var nytusername; var nytpassword; var nytpasswordcopy; var favouriteTeam; nytusername=Request("nytusername"); nytpassword=Request("nytpassword"); nytpasswordcopy=Request("nytpasswordcopy"); email= Request("email"); favouriteTeam= Request("favorithold"); var godkend="1"; var sqlquery1 = 'Select username from Users'; var conn1 = conn.Execute(sqlquery1) while(!conn1.EOF) { if (nytusername == conn1('username').value) { godkend="0"; Response.Write("<tr><td>buuh</td></tr>") } conn1.movenext(); } if(nytpassword == nytpasswordcopy) { if(godkend == "1") { var sqlquery2= "insert into users values ('"+nytusername+"','"+nytpassword+"','Bruger','"+email+"','"+favouriteTeam+"')"; var x=conn.Execute(sqlquery2); Response.Cookies("user")=nytusername; Response.Cookies("pass")=nytpassword; Response.Cookies("passcopy")=nytpasswordcopy; Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'brugerOprettet.asp';") Response.Write ("</script>") } } else { /* Response.Write ("<script type= text/javascript>") Response.Write ("window.location.href = 'ikkeOprettetBruger.asp';") Response.Write ("</script>") */ Response.Write("<table><tr><td>username: "+nytusername+"</td></tr>") Response.Write("<tr><td>password: "+nytpassword+"</td></tr>") Response.Write("<tr><td>password gentagelse: "+nytpasswordcopy+"</td></tr>") Response.Write("<tr><td>email: "+email+"</td></tr>") Response.Write("<tr><td>favorithold: "+favouriteTeam+"</td></tr>") } conn1.Close(); conn1 = null; %> </form> </body> </html>
jeg ender hele tiden nede i else sætningen, hvor jeg skriver dat ud på skærmen,og der kan jeg se at nytpassword, og nytpasswordcopy er identiske.
hvis jeg skrive: if(nytpassword==nytpassword) så virker det naturligvis, men jeg kan bare ikke få lov til at lave tjekket mellem nytpassword, og nytpasswordcopy... det er meget mærkeligt
du har ikke et link? hvis du i din midlertidige variabeludskrivning i else-delen ser nytpassword og nytpasswordcopy som ens, ja så er det ret mystisk
husk at tillade cookies, jeg bruger nemlig session cookies til at gemme nogle data jeg bruger
ok, du har fået noget "juhuu" ind i dit output kan jeg se på siden, håber det betyder du er kommet videre
det er meget mærkeligt. det er som om serveren ikke agerer ens hver gang. tror ikke jeg kommer videre med det her, prøve nogle andre løsninger. tak for de mange svar
måske på tide at lukke spørgsmålet
23. september 2003 - 11:24
#23
lukket
Kurser inden for grundlæggende programmering