Avatar billede Slettet bruger
02. marts 2005 - 12:47 Der er 16 kommentarer og
1 løsning

Fejl i loginsystem i javascript

Hvad er der galt med dette?

/* Opgave 7*/
function opg7(){
document.write("<form name=loginform>");
document.write("<table width=100%>");
document.write("<tr>");
document.write("<td>");
document.write("<input type=text name=usr value=Bruger>");
document.write("</td>");
document.write("<td>");
document.write("<input type=password name=pwd value=kode>");
document.write("</td>");
document.write("</tr>");
document.write("<tr>");
document.write("<td>");
document.write("<input type=submit value=Login onClick=java script:login>");
document.write("</td>");
document.write("</tr>");
document.write("</table>");
document.write("</form>");
}// End on opg7
/* Opgave 7 ^^ */

function login(){
bruger = window.document.loginform.usr.value;
kodeord = window.document.loginform.pwd.value;
if(!(bruger == "kim") || (kodeord == "123")){
alert("FEJL\n Brugernavn eller kodeord\n Prøv igen.");
} else {
document.write("Velkommen kim");
}
}
-->
</script>
Avatar billede the_ghost Nybegynder
02. marts 2005 - 12:52 #1
Hvad er dog det for en if sætning:
if(!(bruger == "kim") || (kodeord == "123")){
oversat:
Hvis bruger ikke er lig med kim eller hvis kodeord er lig med 123

Mener du ikke
if(bruger != "kim" || kodeord != "123"){
Avatar billede the_ghost Nybegynder
02. marts 2005 - 12:52 #2
eller
if(!(bruger == "kim") || !(kodeord == "123")){
Avatar billede Slettet bruger
02. marts 2005 - 12:53 #3
jo... men der er stadig en fejl, den går ikke videre fra opgave 7 altså
er det rigtigt: document.write("<input type=submit value=Login onClick=java script:login>");
Avatar billede Slettet bruger
02. marts 2005 - 12:54 #4
den medler osse fejl her:
document.write("<form name=loginform>");
Avatar billede roenving Novice
02. marts 2005 - 12:58 #5
-- du har en fejl i tabellen, for der er 2 celler i øverste række, men kun een i nederste, men egentlig skulle det ikke betyde noget ...

-- desuden er det tåbeligt at bruge den stærkt belastende document.write en masse gange, konkatener i stedet en tekststreng, som du smider ud til sidst !-)

-- og så skal du nok huske en document.close() bagefter, og når du har benyttet document.write, så er javascriptet ikke til stede mere !o]
Avatar billede Slettet bruger
02. marts 2005 - 13:00 #6
oki... det forstår jeg ikke så meget af...
men nej der er lige mange tabeller...
men hvordan skal jeg ellers gøre?
Skal jeg lade vær med at have det i en document.write?
Avatar billede Slettet bruger
02. marts 2005 - 13:01 #7
konkatener ?
Avatar billede thomas_yde Nybegynder
02. marts 2005 - 13:01 #8
Du kan ikke bruge din login funktion. document.write sletter hvad der står nu og skriver til dokumenetet.
du kan istedet gøre sådan:


<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<script type="text/javascript">

</script>
<BODY>

<P>&nbsp;</P>
<script type="text/javascript">

function login(){
var bruger = document.loginform.usr.value;
var kodeord = document.loginform.pwd.value;
alert(bruger);
if(!(bruger == "kim") || !(kodeord == "123")){
alert("FEJL\n Brugernavn eller kodeord\n Prøv igen.");
return false
} else {
document.write("Velkommen kim");
}
}
-->
</script>

<form name=loginform onsubmit="return false">
<table width=100%>
<tr>
<td>
<input type=text name=usr value=Bruger>
</td>
<td>
<input type=password name=pwd value=kode>
</td>
</tr>
<tr>
<td>
<input type=submit value=Login onClick="java script:login();" id=submit1 name=submit1>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>
Avatar billede thomas_yde Nybegynder
02. marts 2005 - 13:04 #9
hvis du endelig skal skrive hele formen med javascript, så gør det med at samle det til en tekststreng og kast det hele ind i en <div> med innerHTML.

Eller du kan skabe hvert html object med document.createElement("TAGNAVN") og så appende dem. Men det tror jeg måske I skal igennem senere, det ligner noget kursus i javascript.
Avatar billede Slettet bruger
02. marts 2005 - 13:05 #10
I submit:
hva gør id'et og name= bruger du jo ikke til noget
Avatar billede Slettet bruger
02. marts 2005 - 13:06 #11
ja det er det osse
Avatar billede Slettet bruger
02. marts 2005 - 13:06 #12
altså et skole forløb hvor vi skal lærer det :D ^^
Avatar billede thomas_yde Nybegynder
02. marts 2005 - 13:07 #13
id og name bruges ikke til noget i dette eksempel, det var noget Microsoft Visual Interdev mente der skulle på. Så det skal du ikke tænke videre over.
Avatar billede Slettet bruger
02. marts 2005 - 13:10 #14
oki... men hvis du har tid, lyst så skal jeg osse gøre så man kun har 5 forsøg...
men hvis man taster forkert først gang , først der skal den vise at man kun har 4 forsøg tilbage...

PS. Du får flere ponits
Avatar billede thomas_yde Nybegynder
02. marts 2005 - 13:18 #15
Jo men så lærer du jo ikke noget :)

Nå men du kan jo kigge lidt på den her.

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<script type="text/javascript">

</script>
<BODY>

<P>&nbsp;</P>
<script type="text/javascript">
var antalForsog = 5;

function fejlLogin(){
    antalForsog--;
    var objErrorLogin = document.getElementById("errorLogin");
    objErrorLogin.innerHTML = "Du har nu " + antalForsog + " forsøg tilbage";
}

function login(){
if(antalForsog>0){
    var bruger = document.loginform.usr.value;
    var kodeord = document.loginform.pwd.value;
    if(!(bruger == "kim") || !(kodeord == "123")){
    alert("FEJL\n Brugernavn eller kodeord\n Prøv igen.");
    fejlLogin();
    return false
    } else {
    document.write("Velkommen kim");
    }
} else{
    var objErrorLogin = document.getElementById("errorLogin");
    objErrorLogin.innerHTML = "Du har prøvet for mange gange!";
}
}
-->
</script>
<div id="errorLogin" style="color:red;"></div>
<form name=loginform onsubmit="return false">
<table width=100%>
<tr>
<td>
<input type=text name=usr value=Bruger>
</td>
<td>
<input type=password name=pwd value=kode>
</td>
</tr>
<tr>
<td>
<input type=submit value=Login onClick="java script:login();" id=submit1 name=submit1>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>
Avatar billede Slettet bruger
02. marts 2005 - 13:21 #16
jeg siger mange tak... nej det er nu bare for at have noget at kigge efter hvis det kniper
Avatar billede Slettet bruger
02. marts 2005 - 13:22 #17
Her er 15 +(de ekstra points jeg lovede) (25) = 40
Tak for hjælpen
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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