Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 22
  1. #1
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    Question Bei falscher Eingabe Formular schütteln

    Hallo,
    wenn man auf blog4i.de › Anmelden einen falschen Benutzernamen und oder ein falsches Passwort eingibt, schüttelt sich das Formular.
    Genau so etwas suche ich, nur mit einem Eingabefeld (Betacode--Eingabe). Habe so etwas jetzt schon öfter gesehen, habe mir auch den Code der seite angesehen, doch ich komme nciht weiter!
    Könnt ihr mir helfen?

  2. #2
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    hiermit solltest Du weiterkommen
    Code:
    <script type="text/javascript">
    addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
    function s(id,pos){g(id).left=pos+'px';}
    function g(id){return document.getElementById(id).style;}
    function shake(id,a,d){c=a.shift();s(id,c);if(a.length>0){setTimeout(function(){shake(id,a,d);},d);}else{try{g(id).position='static';wp_attempt_focus();}catch(e){}}}
    addLoadEvent(function(){ var p=new Array(15,30,15,0,-15,-30,-15,0);p=p.concat(p.concat(p));var i=document.forms[0].id;g(i).position='relative';shake(i,p,20);});
    </script>
    die letzten beiden Zeilen: function shake(...)
    und auch nochmal in den statischen Quelltext schauen

    oder Du greifst auf jQuery .animate() a.ä. zurück
    fatal error: EBKAC (error between keybord and chair)

  3. #3
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Wie kann ich denn hier definieren, welches Textfeld benutz wird?
    Ich bin auf Javascript leider ein extremer Anfänger und habe garkeine Ahnung!

  4. #4
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Das ist mein Code:
    HTML-Code:
    <form action="script.php" method="post">
        <input type="text" name="password" id="eingabe" value="Betacode" onBlur="if(this.value=='') this.value='Betacode';" onFocus="if(this.value=='Betacode') this.value='';" />
        <button type="submit" id="buttons"></button>
        <p>&nbsp;</p>
    </form>

  5. #5
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    das script holt die id des ersten Formulars auf der Seite, da nicht das input sondern das form geschüttelt wird, auch wieder letze Zeile
    Code:
    var i=document.forms[0].id
    Du must deinem Formular also ne id geben (edit: ah, ..haste ja)
    HTML-Code:
    <form id="irgendwas">
        <input type="...>
    </form>
    aber 1:1 wirst Du das script sicher nicht übernehmen können, da auch noch andere Abhängigkeiten zur Ursprungsseite vorhanden sind (vgl. stat. Quelltext)

    aber die sind m.E. auch nicht nötig, räum doch das script mal etwas auf (indent style, ordentliche Funktionsnamen etc.), dann wird klar, was alles überflüssiger Ballast ist, und wie Du das script minimieren und auf Deine Erfordernisse anpassen kannst
    fatal error: EBKAC (error between keybord and chair)

  6. #6
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Ich probiere mal etwas herum und melde mich dann wieder!

  7. #7
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    So, ich bin jetzt auf ein Script gestoßen:
    Code:
    <script type="text/javascript">
    $("#eingabe").live('keyup', function() {
    if($("#eingabe").val().length == 3) {
    $('#got_code').animate({ marginLeft: "-20px" }, 100)
    .animate({ marginLeft: "10px" }, 35)
    .animate({ marginLeft: "-5px" }, 35)
    .animate({ marginLeft: "5px" }, 35)
    .animate({ marginLeft: "0px" }, 35, function() {
    $('#eingabe').val("").focus();
    });
    };
    });
    </script>
    Mein Eingabefeld:
    HTML-Code:
      <form action="script.php" id="got_code" method="post">
        <input type="text" name="password" id="eingabe" value="Betacode" onBlur="if(this.value=='') this.value='Betacode';" onFocus="if(this.value=='Betacode') this.value='';" />
        <button type="submit" id="buttons"></button>
        <p>&nbsp;</p>
    </form>
    Mein Login-Code:
    PHP-Code:
    <?php

    $passwort 
    $_POST['password'];


    if(
    $passwort == "passwortmüsstihrnichtwissen") {
        
    header ('Location:http://www.deinemudda.org/derlinkistegal');
        

        
        }else {
            
    header ('Location:http://www.deinemudda.org/index.php?login=false');
            
    }


    ?>
    Was muss ich jetzt ändern, dass geshaked wird? Also was muss ich (ich glaube beim Login-PHP-Code) ändern, damit sich das Formular dann schüttelt?

    ?login=false ist übrigens:
    PHP-Code:
    <?php
    if (isset($_GET["login"])){ $GLOBALS["login"]=$_GET["login"];}
    else { 
    $GLOBALS["login"]="";}
    if (
    $login=="false") {
    echo 
    "Der Nutzername und / oder das Passwort sind nicht richtig.";
    }
    ?>

  8. #8
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    Du must bei der Fundstelle schauen, welche Elemente welche id's haben

    also eingabe und got_code und dann das jQuery script an die id's Deiner entsprechenden Elemente anpassen (nicht andersherum)

    jQuery musst Du auch einbinden und auch mal in der jQ-API nachlesen, was animate() oder live() etc. denn so machen

    verstehen statt kopieren ist das Motto

    anstatt .live() zu benutzen um das onkeyup event zu binden, kannst Du es auch direkt machen, da es sich ja nicht um dynamische Elemente handelt
    (.live() kann z.T. Nachteile haben, siehe API, Alternativen gibt es mehrere z.B. .bind() usw.)
    oder so
    Code:
    // statt
    $("#eingabe").live('keyup', function() { ... usw.
    
    // dann
    $("#DeineId").keyup(function() { ... usw.
    fatal error: EBKAC (error between keybord and chair)

  9. #9
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Hab ich ja angepasst, vorher stand da #eins, #zwei und #drei.

    Das Problem ist dass ich dort nciht weiterkomme.
    Es wäre nur interessant was ich im PHP-Code einstellen muss, dass sich das ganze schüttelt.

  10. #10
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    am php musst Du eigentlich gar nichts ändern, das läuft ja serverseitig,
    das js musst Du anpassen, da das im browser das Schütteln anhand Deiner Bedingungen macht
    (momentan bei keyup, wenn eingabe 3 Zeichen enthält)

    jQuery an sich hast Du auch eingebunden? was steht in der Fehlerkonsole? und (Wo finde ich die Fehlerkonsole?)

    dann mach doch mal nen testlink dazu

    oder ein jsFiddle, dann kann man besser helfen als anhand von code-Happen
    fatal error: EBKAC (error between keybord and chair)

  11. #11
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    bin dabei

  12. #12
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Testseite -> Das ist die Testseite

  13. #13
    jakestyler ist offline Jungspund
    registriert
    07-10-2012
    Beiträge
    20

    AW: Bei falscher Eingabe Formular schütteln

    Das Ding ist, es schüttel sich jetzt wenn ein buchstabe zu viel eingegeben wurde, aber es schüttelt sich nciht wenn der falsche buchstabe angegeben wurde.

  14. #14
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    naja es macht, was programmiert wurde (schütteln bei 6 Zeichen)

    was passiert denn, wenn eine falsche Eingabe gemacht wird? es wird nur die Seite neu geladen

    wie soll das script da mitkriegen, das es schütteln soll?

    Du müsstest das script anders aufbauen, es müsste bei onload der Seite prüfen, ob z.B. eine errorclass vorhanden ist, wenn ja schütteln, wenn nicht dann nicht
    fatal error: EBKAC (error between keybord and chair)

  15. #15
    Avatar von scrypter
    scrypter ist offline Haudegen
    registriert
    25-06-2011
    Beiträge
    706

    AW: Bei falscher Eingabe Formular schütteln

    Du musst also per php beim Fehler z.B. dem input eine class verpassen und auf die beim onload prüfen, siehe .hasClass()
    Code:
    $(document).ready(function() {
        if ($("#eingabe").hasClass('errorClass')) {
            $('#got_code').animate({ marginLeft: "-20px" }, 100)
            .animate({ marginLeft: "10px" }, 35)
            .animate({ marginLeft: "-5px" }, 35)
            .animate({ marginLeft: "5px" }, 35)
            .animate({ marginLeft: "0px" }, 35, function() {
                $('#eingabe').val("").focus();
            });
        }
    });
    zusätzlich kannst Du per css für .errorClass z.B. background-color: red; vergeben

    das nennt man Affenformular, d.h. die Seite ruft sich solange selbst auf, bis der login korrekt war, erst dann wird anderer Inhalt gezeigt, das regelt Dein php
    fatal error: EBKAC (error between keybord and chair)

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Eingabe Formular
    Von toomsa im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 18-08-2008, 11:36
  2. Formular Textfeld mit begrenzter Eingabe
    Von EM im Forum Allgemeines
    Antworten: 10
    Letzter Beitrag: 22-02-2006, 17:35
  3. Antworten: 5
    Letzter Beitrag: 19-02-2006, 18:11
  4. Ebene statt Browser Fenster schütteln
    Von mondo im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 12-11-2003, 14:23
  5. Formular Eingabe per Button ??
    Von medialution im Forum JavaScript
    Antworten: 7
    Letzter Beitrag: 14-04-2003, 19:44

Stichworte

Lesezeichen

Berechtigungen

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