Login Funktion

tester33

Erfahrenes Mitglied
Hallo zusammen, ich habe eine Login Funktion programmiert, doch irgendwie funktioniert sie nicht mehr, seit ich beim Button ein Bild eingefügt habe, hier der Code:

HTML:
<form name="login">

<!--farbiger Rand-->

<table bgcolor="#B4B3FF" cellspacing="0" width="225" border="0" cellpadding="5">
        <tr>
                <td>Username:</td>
                <td><input type="text" name="username" size="20"></td>
        </tr>
        <tr>
                <td>Passwort:</td>
                <td><input  type="Password" name="password" size="20"></td>
        </tr>
        <tr>
                <td colspan="2" align="center">
                <input type="image" value="Login" onClick="Login()" src="images/login_button.gif">
                </td>
        </tr>
</table>

</form>

HTML:
function Login(){

var done=0;
var username = "";
var passwword = "";
var Dateiname = "";
var PfadGastDatei = "";
var PfadUserDatei = "";

// Prüfung ob leer
if (
    (username=document.login.username.value == "") 
    &&
    (password=document.login.password.value == "") 
)

{
alert('Hinweis:', 'Bitte korrekte Zugangsdaten eintragen')
return false;
}

if 
(username=document.login.username.value == "") 
{
alert('Hinweis:', 'Bitte korrekten Benutzernamen eintragen')
return false;
}

if 
(password=document.login.password.value == "") 
{
alert('Hinweis:', 'Bitte korrektes Passwort eintragen')
return false;
}


var 
username=document.login.username.value;
username=username.toLowerCase();
var 
password=document.login.password.value;
password=password.toLowerCase();




// 1) Gastlogin
if (username=="gast" && password=="login")
{

// gastlogin feste Zieldatei
// this.window.location="IhrDateiname.html";

// gastlogin zusammengesetzter Dateiname
url = PfadGastDatei + username + "-" + password + ".html";
this.window.location = url;

done=1;
}
else
{


// 2) andere logins
Dateiname = username + "-" + password + ".html";
url = PfadUserDatei + Dateiname;

// Default - Standard
this.window.location = url;


return;
}

if (done==0) { alert("Invalid login!"); }

}

Wieso geht das nicht mehr? Voher hat sie funktionniert

MfG
Simon
 
Ich weiß nicht, warum es nicht geht, aber:

Wieso prüfst du das Passwort Client-seitig? Das kann doch jeder auslesen. Und es kann auch nach dem Login jeder die Ziel-Seite wieder aufrufen oder jemandem den Link senden, ohne sich erneut einzuloggen.
 
Hi,

unterbinde das Standard-Ereignis (submit) des Buttons, indem du false im onclick-Event zurück gibst.
Code:
<input type="image" value="Login" onClick="Login(); return false;" src="images/login_button.gif">
Ciao
Quaese
 
He,

sorry aber es läuft nicht, er macht einen riesen Fehler, er generiert eine Seite, die es nicht gibt, die zeigt er nicht mal an, es funktioniert leider gar nicht, das Bild wird auch nicht angezeigt, aber Danke! Irgendwie geht es nicht.

MfG
Simon
 
Ich habe eine kleine Änderung vorgenommen:
HTML:
<input type="image" onClick="Login(); return false;" src="images/login_button.gif">
Der Button wird angezeigt, doch die Weiterleitung ist nicht kompatibel.

MfG
Simon
 
Hi,

was erwartest du, dass das Script leistet?

Im Augenblick wird geprüft, ob in beide Felder etwas eingetragen ist. Ist das der Fall gibt es folgende Varianten:

1. Passwort: login, Username: gast
In diesem Fall wird das Dokument "gast-login.html" aufgerufen

2. Im zweiten Fall wird der Dateiname aus den Eingaben aus den Feldern [username] und [password] zusammengesetzt ("[username]-[password].html") und aufgerufen.

Wenn die Dokumente mit den zusammengetzten Dateinamen existieren, wird das Script bei mir korrekt ausgeführt.

Ciao
Quaese
 
Es soll:
Username : Gast
Passwort: login

die Datei
Gast-login.html
aufrufen. Doch es bleibt bei der normalen Seite.

MfG
Simon
 
Hi,

genau das tut es bei mir:
Code:
<html>
<head>
<script type="text/javascript">
  <!--
function Login(){
  var done=0;
  var username = "";
  var passwword = "";
  var Dateiname = "";
  var PfadGastDatei = "";
  var PfadUserDatei = "";

  // Prüfung ob leer
  if((username=document.login.username.value == "") && (password=document.login.password.value == "")){
    alert('Hinweis: Bitte korrekte Zugangsdaten eintragen')
    return false;
  }

  if(username=document.login.username.value == ""){
    alert('Hinweis: Bitte korrekten Benutzernamen eintragen')
    return false;
  }

  if(password=document.login.password.value == ""){
    alert('Hinweis: Bitte korrektes Passwort eintragen')
    return false;
  }

  var	username=document.login.username.value.toLowerCase();
  var	password=document.login.password.value.toLowerCase();

  // 1) Gastlogin
  if(username=="gast" && password=="login"){
    // gastlogin feste Zieldatei
    // this.window.location="IhrDateiname.html";

    // gastlogin zusammengesetzter Dateiname
    url = PfadGastDatei + username + "-" + password + ".html";
    this.window.location = url;

    done=1;
  }else{
    // 2) andere logins
    Dateiname = username + "-" + password + ".html";
    url = PfadUserDatei + Dateiname;

    // Default - Standard
    this.window.location = url;

    return;
  }

  if (done==0) { alert("Invalid login!"); }

}
 //-->
</script>
</head>
<body>
<form name="login">
  <table bgcolor="#B4B3FF" cellspacing="0" width="225" border="0" cellpadding="5">
    <tr>
      <td>Username:</td>
      <td><input type="text" name="username" size="20"></td>
    </tr>
    <tr>
      <td>Passwort:</td>
      <td><input  type="Password" name="password" size="20"></td>
    </tr>
    <tr>
      <td colspan="2" align="center">
        <input type="image" value="Login" onclick="Login(); return false;" src="images/login_button.gif">
      </td>
    </tr>
  </table>
</form>
</body>
</html>
Ciao
Quaese
 
Ja, dies ist auch mein Code, doch:
Bei asdf macht er mir eben dies:

file:///C:/Homepage/Offline/index.html?username=asdf&password=asdf&x=74&y=35
statt:
file:///C:/Homepage/Offline/asdf-asdf.html

Das ist noch das Problem.

MfG
Simon
 
Zurück