Ergebnis 1 bis 1 von 1

Thema: Ajax Probleme

  1. #1
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard Ajax Probleme

    Hallo,
    also wie manche schon wissen war ich auf den JS-Login tripp. Ist aber so ganz unsicher. Also hab ich gedacht, mach ich meinen LogIn nich so plump mit weiterleitung sondern elegant mit Ajax. Aber es passiert nichts und in der Fehlerkonsole tauch auch nichts auf, weder im Opera noch im FF. Nichtmal der pingelige IE sagt was, es kommt aber nix zurück...
    Hier mal die scripte:
    Der Login teil
    HTML-Code:
    <div id="login">
     <h1>Login</h1>
     <table border="0" style="border: 2px solid #808080; background: #161616;">
      <tr>
       <td style='width: 369px; border-right: 2px solid #808080;'>
        <a>In order to login you must be registered. Registering takes only a few moments but gives you increased capabilities. The board administrator may also grant additional permissions to registered users. Before you register please ensure you are familiar with our terms of use and related policies. Please ensure you read any forum rules as you navigate around the board.</a>
        <br>
        <center>
         <a href="index.php?page=agb">Rules</a>
        </center>
       </td>
       <td style="width: 371px;">
        <form action="login.php" method="POST" name="login">
         <a>Username</a><br>
         <input type="text" name="user" id="user"><br>
         <a href="index.php?page=register">register</a><br>
         <a>Password:</a><br>
         <input type="password" name="pass" id="pass" onkeypress="if (capLock(event)) { document.getElementById('capslockmsg').style.display='block';}else{document.getElementById('capslockmsg').style.display='none';}"><br>
         <a href="index.php?page=password">I forgot my password</a><br>
         <input type="checkbox" name="stay"><a>Log me on automatically each visit</a><br>
         <div id="capslockmsg">
          <br><a>Caps lock is on.</a>
         </div>
       </td>
      </tr>
     </table>
     <div style="border: 2px solid #808080; border-top: none; background: #161616;">
      <center>
       <input type="button" value="Login" style="margin-top: 4px; margin-bottom: 4px; border: 2px solid #000; background: #808080;" onclick="logg();">
      </center>
     </div>
    </div>
    <div id="msg">
     <center>
     <![CDATA[
     function msg_addtext(text) {
        window.document.write(text);
     }
     ]]!></center>
     <input type="button" value="OK" onclick="msgdisappear()">
    </div>
    dann das loginscript login.js, ist ganz sicher eingebunden:
    Code:
    function msg(text) {
        document.getElementById('fade').style.display="block";
        document.getElementById('msg').style.display="block";
        msg_addtext(text);
    }
    function msgdisappear() {
        document.getElementById('fade').style.display="none";
        document.getElementById('msg').style.display="none";
    }
    request=null;
    function init_ajax() {
        var ajax_request;
        var versions=new Array("MSXML2.XMLHttp.6.0",
        "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
        "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp",
        "Microsoft.XMLHttp");
        if (document.getElementById) {
            if (window.XMLHttpRequest) {
                ajax_request=new XMLHttpRequest();
            }
            if (window.ActiveXObject) {
                for (var i=0;i<versions.length;i++) {
                    try {
                        ajax_request=new ActiveXObject(verions[i]);
                    }
                    catch(exception){}
                }
            }
        }
        return ajax_request;
    }
    suc=null;
    state=null;
    function fetch_data() {
        if (request.readyState == 4) {
            if (request.status == 200) {
                suc=request.responseXML.getElementsByTagName('stat')[0];
                state=request.responseXML.getElementsByTagName('respan')[0];
                calllogin();
            }
        }
    }
    function calllogin() {
        if (suc=="true") {
            alert('Login sucess, youll be redirected');
            if (state=="logged") {
                window.setTimeout("location.href='index.php?page=alrlogged'", 2000);
            }
            else {
                window.setTimeout("location.href='index.php'", 2000);
            }
        }
        else {
            switch (state) {
                case "msql":
                    alert("Databaseconnection faild");
                break;
                case "ntv":
                    alert("Your account is not acitvated. Activate it via the link in the mail we sent to you");
                break;
                case "block":
                    alert("Your account is blocked");
                break;
                case "ip":
                    alert("This ip has been logged already, both accounts have been blocked");
                break;
                case "data":
                    alert("Please check your username and password");
                break;
                case "maxlog":
                    alert("You have used your 3 tries to log. Please wait 15 minutes");
                break;
            }
        }
    }
    function check() {
        if (request.readyState == 4) {
            if (request.status == 200 ) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            return false;
        }
    }
    function getrdy() {
        request=init_ajax();
        if (request) {
            //phpfileurl="hidden_login.php?one="+document.getElementById('user').value+"&two="+document.getElementById('pass').value;
            phpfileurl="test.xml";
            request.open("POST", phpfileurl);
            request.send(null);
            request.onreadystatechange=fetch_data;
        }
        else {
            alert('Server Connection lost');
        }
    }
    function logg() {
        getrdy();
        //document.getElementById('waiting').style.display="block";
    }
    die variable phpfileurl ändert sich noch, ist aber momentan auf aben dieser XML, da es auch mit der PHP nicht geklappt hat.
    Die besagte text.xml
    Code:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
     <respan>ntv</respan>
     <stat>false</stat>
    Wenn das PHP script nachher was zur sache tut, dann poste ich das auch.

    Ich komm halt einfach nicht weiter, vor allem hab ich keine Ahnung weiso keine Meldung kommt. Vielen dank an alle die sich gedanken machn^^.

    P.S: Ja, der alert() ist unelegant, wird aber später durch das eigendefinierte msg() ersetzt.

    //EDIT:
    Mit der XML klappts jetzt, aber mit der PHP wieder garnichts.
    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 !!!!!
    Geändert von Tobse (21.11.2009 um 11:28 Uhr)
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

Ähnliche Themen

  1. Autocomplet mit Ajax
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 13.07.2008, 13:59
  2. AJAX Bücher
    Von Blue20 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 0
    Letzter Beitrag: 31.10.2007, 15:21
  3. AJAX-Problem
    Von Dieter im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 8
    Letzter Beitrag: 21.05.2007, 09:29
  4. ajax - Serverlastig?
    Von Dragon-D im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 17.01.2007, 15:07
  5. Ajax???
    Von andi1804 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 6
    Letzter Beitrag: 26.09.2006, 23:58

Stichworte

Berechtigungen

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