Ergebnis 1 bis 5 von 5

Thema: mal wieder java-script Problem

  1. #1
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard mal wieder java-script Problem

    Code:
    function passwordCheck() {
         var password1 = document.getElementById('password').value;
         var passwordlength = document.getElementById('password').length;
         var password2 = document.getElementById('repeat').value;
    
         if (password1!=password2) {
          alert('Die von ihnen angegebenen Passwörter sind nicht identisch');
    	  document.getElementById('password').value="";
    	  document.getElementById('repeat').value="";
    	  document.getElementById('repeat').focus();
         }
         elseif &#40;passwordlength<4&#41;
         &#123;
          alert&#40;'Die von ihnen angegebenen Passwrter ist zu kurtz  &#40; min 4 zeichen &#41;'&#41;;
    	  document.getElementById&#40;'password'&#41;.value="";
    	  document.getElementById&#40;'repeat'&#41;.value="";
    	  document.getElementById&#40;'repeat'&#41;.focus&#40;&#41;;     
         &#125;
         else
         &#123;
    		try &#123;
    			document.useradminForm.onsubmit&#40;&#41;;
    		    &#125;
    		catch&#40;e&#41;&#123;&#125;
    		document.useradminForm.submit&#40;&#41;;
         &#125;
    
    &#125;
    ichfinde den Fehelr nicht!! der debugger sagt immer nur

    Fehler: syntax error
    Quelldatei: https://config.local/template/functions.js
    Zeile: 52, Spalte: 5
    Quellcode:
    else
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Moin!

    In deinem Script sind gleich mehrere Fehler.

    1. Dein Hauptproblem war, daß du bei der Überprüfung der Länge des eingegebenen Passwortes vergessen hast, daß "value" zu notiern. Du hast dmit nur die Länge des Input-Tag geprüft un der ist immer "undefined" und damit kleiner als 4 (weil überhaupt kein numerischer Wert).

    2. Schönheitsfehler: das Einlesen der PW-Länge in eine eigene Variable ist überflüssig, da es genau 1x benötigt wird. Einfacher kann man die bereits eingelesene Variable "password1" auf ihre Länge überprüfen.

    3. Eine zusätzliche Fehlerüberwachung mit "try" ist überflüssig, wenn man die Überprüfung generell erst beim Absenden des Formulars aufruft, siehe mein Beispiel.

    4. ein einigermaßen sicheres Passwort sollte mindesten 6 Zeichen haben, besser 8-12.
    4 Zeichen sind zu schnell zu knacken.

    Im folgenden Beispiel gehe ich davon aus, daß du die Eingabe an ein PHP-Script übergibst. Ich weiß nicht wie dein PHP-Script heißt und habe es im Beispiel einfach einmal "useradmin.php" genannt, das mußt du ggf. noch anpassen.
    Generell halte ich es übrigens für besser, die Überprüfung durch das aufzurufende PHP-Script zu machen und dann im Fehlerfall auf die Eingaberoutine zurück zu verweisen.

    Quelltext:
    Code:
    <html>
    <head>
    <script type="text/javascript" language="JavaScript">
    <!--
    function passwordCheck&#40;&#41;
         &#123;
         var password1 = document.getElementById&#40;'password'&#41;.value;
         var password2 = document.getElementById&#40;'repeat'&#41;.value;
    
         if &#40;password1!=password2&#41;
            &#123;
            alert&#40;'Die von ihnen angegebenen Passwörter sind nicht identisch'&#41;;
            document.getElementById&#40;'password'&#41;.value="";
            document.getElementById&#40;'repeat'&#41;.value="";
             document.getElementById&#40;'password'&#41;.focus&#40;&#41;;
             return false;
             &#125;
    
         if &#40;password1.length < 6&#41;
             &#123;
             alert&#40;'Das von ihnen angegebene Passwort ist zu kurz  &#40; min. 6 Zeichen &#41;'&#41;;
             document.getElementById&#40;'password'&#41;.value="";
             document.getElementById&#40;'repeat'&#41;.value="";
             document.getElementById&#40;'password'&#41;.focus&#40;&#41;;
             return false;
             &#125;
         &#125;
    //-->
    </script>
    </head>
    <body>
    <form name="useradminForm" methode="post" action="useradmin.php" onSubmit="return passwordCheck&#40;&#41;">
    <input name="password" id="password" type="password"></input>
    <input name="repeat" id="repeat" type="password"></input>
    <input type="submit" value="Abschicken"></input>
    </form>
    </body>
    </html>
    Gg.a.d.M.

    Ronald
    ... der Javascript trotzdem haßt!

  3. #3
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    danke üfr die überarbeitung. aber das action lasse ich generell lehr da das ganze ien größeres cms ist und alels an die index.php übergeben wird.

    Und die 4 Zeichen sicherheits-politk reicht shcon. da man dieses sicher nict ebi 12 versuchen raus bekommen.

    PS. GL HF beim bruteforce wenn das PW z.B. lautet: "F*1\g" das dauert dann auch schon so seine Zeit.

  4. #4
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Zitat Zitat von GreenRover
    danke üfr die überarbeitung. aber das action lasse ich generell lehr da das ganze ien größeres cms ist und alels an die index.php übergeben wird.
    ... was dann zur Folge hat, daß bei abgeschaltetem Javascript dein Login nicht mehr funktioniert. Außerdem mußt du dir mit Javascript eine Krücke bauen, anstatt korrekt (W3-Conform) zu coden. Und wie ich schon schrieb: normalerweise macht man diese Überprüfung mit PHP.


    Zitat Zitat von GreenRover
    Und die 4 Zeichen sicherheits-politk reicht shcon. da man dieses sicher nict ebi 12 versuchen raus bekommen.
    Ich hab da so meine Zweifel, da die User sich ihre Passworte sicherlich selbst bestimmen und die meisten normalen User über die Sicherheitsproblematik nicht informiert sind, dann Passworte wie "1234" oder "asdf" benutzen. Die sind dann recht schnell zu knacken.

    Zitat Zitat von GreenRover
    PS. GL HF beim bruteforce wenn das PW z.B. lautet: "F*1\g" das dauert dann auch schon so seine Zeit.
    Das sind ja schon einmal 5 Zeichen

    Igrendwie verstehe ich dich nicht, aber was soll's

    Ronald

  5. #5
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ja das wies ich auch das man die Überprüfung normaler weise in PHP macht. Finde es so für den User aber angenehnehmer. Werde vileicht auch noch eine Doppel Überprüfung machen ( also mit PHP auch noch ). aber mal gucken da ic hdoch sehr unter Zeitdruck stehe.

Ähnliche Themen

  1. Java Script
    Von Snowfront im Forum HTML & CSS Forum
    Antworten: 14
    Letzter Beitrag: 20.11.2006, 16:15
  2. Java-Script Problem
    Von Shila im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 01.03.2006, 14:18
  3. kleines problem mit nem java script menü
    Von Knüps im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 18.08.2005, 20:08
  4. java-script: 1 Link auf 2 Frames - Zurück-Button-Problem
    Von Beara im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 02.05.2005, 13:13
  5. java script pop-up über frames problem
    Von gastgast im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 0
    Letzter Beitrag: 28.07.2004, 23:46

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •