Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] System logowania
Forum PHP.pl > Forum > PHP
fernet
Troche dziwny problem explorer po sumbit wywala biala strone i koniecnzy jst refresh zeby kontynuowac w firefoxie w konsoli bledow pojawia sie

Kod
Błąd: błąd składni
Plik źródłowy: http://127.0.0.1/~bzium/include/login_check.php?logerUser=michal&logerPass=michal&_uniqid=0828334390
Wiersz: 1, Kolumna: 1
Kod źródłowy:
cacy^


W firefoxie jak i w opera strona generlanie jakos ciagnie z tym ze jest ten blad...


login_form.php

Kod
<?php
session_start();
if( !isset( $_SESSION['user'])) {
    echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"post\" id=\"loginForm\" name=\"loginForm\" onsubmit=\"sprawdz_dane();return(false);\">";
    echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"200\">";
    echo "<tr><td align=\"left\"><a href=\"register.php\">Nie zarejestrowany! Zrob to teraz!</a></td></tr>";
    echo "<tr><td align=\"left\">Zapomniałeś hasła?</td></tr>";
    echo "<tr><td align=\"left\">Pseldonim:</td></tr>";
    echo "<tr><td align=\"left\"><input type=\"text\" name=\"logerUser\" id=\"logerUser\"/></td></tr>";
    echo "<tr><td align=\"left\">Haslo:</td></tr>";
    echo "<tr><td align=\"left\"><input type=\"password\" name=\"logerPass\" id=\"logerPass\"/></td></tr>";
    echo "<tr><td align=\"left\"><input type=\"submit\" value=\"Zaloguj\" id=\"aa\"/></td></tr>";
    echo "</table></form>";
} else {
    echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"200\" align=\"center\"><tr><td>";
    echo "<br><br>";
    echo "<a href=\"account.php\">Opcje Konta</a>";
    echo "<br><br>";
    echo "<a href=\"inbox.php\">Skrzynka</a>";
    echo "<br><br>";
    echo "<a href=\"include/login_check.php?def=logout\">Wyloguj</a>";
    echo "<br><br>";
    echo "<br><br><br>";
    echo "</td></tr></table>";
}

?>


login_check.php

Kod
<?php
session_start();
if (empty($_GET['logerUser'])) {
    if ($_GET['def'] == "logout") {
         session_destroy();
         header( "Location: http://127.0.0.1/~bzium/");
    }
    echo "user";
} else {
    if (empty($_GET['logerPass'])) {
        echo "pass";
    } else {
        $db = @mysql_connect("localhost", "user", "haslo");
        mysql_select_db("asia");
        $user = $_GET['logerUser'];
        $zapytanie = "SELECT * FROM users  WHERE user LIKE \"$user\"";
        $wykonaj = mysql_query($zapytanie);
        $znaleziono = mysql_num_rows($wykonaj);
        if ($znaleziono == 1 ) {
            while ($row = mysql_fetch_array($wykonaj))
            {
                $pass = $row['pass'];
                $status = $row['status'];
            }
            if (md5($_GET['logerPass']) == $pass) {
                if($status > 0) {
                    $_SESSION['user'] = $_GET['user'];
                    $_SESSION['status'] = $status;
                    
                    echo "cacy";        
                } else {
                    echo "error";
                }
            } else {
                echo "error";
            }
        } else {
            echo "error";
        }
        mysql_close($db);
    }
}
?>


action.js

Kod
function $(id) {
     return document.getElementById(id);
}

function sprawdz_dane() {
    var loger_user = $("logerUser").value;
    var loger_pass = $("logerPass").value;
    var zapytanie = "include/login_check.php?logerUser="+loger_user+"&logerPass="+loger_pass;
    advAJAX.get({
        url : zapytanie,
        onSuccess : function(obj) {
            if(obj.responseText == "user") {
                alert("Podaaj prosze Login.");
                $("logerUser").focus();
            }
            if(obj.responseText == "pass") {
                alert("Podaj prosze Haslo.");
                $("logerPass").focus();
            }
            if(obj.responseText == "error") {
                alert("Podales nieprawidlowe haslo.");
                $("logerPass").focus();
                $("logerPass").value ='';
            }
            if(obj.responseText == "cacy") {
                $("loginForm").submit();
            }
        }
    });    
}


Plik login_form.php jak i action.js jest includowany na kazdej strony... chcalbym jakos sie pozbyc tego bledu ale naprawde nie wiem co dokladnie mu sie tam nie podoba aha bym zapomnial to wszystko kozysta z klasy advajax.js

Za pomoc i zainteresowanie z gory dzekuje i pozdrawiam...
rojmarek
wklej generowany kod html, albo sam zobacz co tam masz...
fernet
tzn nie rozumiem jak mam wkelic generowany kod login_form.php za posrednictwem action.js przekazuje w formie get do include/login_check.php zmienne logerUser i logerPass wyglada to tak include/login_check.php?logerUser="+loger_user+"&logerPass="+loger_pass plik login_check.php na podstwie tych wlasnie danch wywala slowa "user", "pass", "cacy", "error" i to jest obj.responseText dla action.js na podstawie tego wywalane sa komunikaty. Po interpretacji tego komunikatu o bledze wnioskuje ze jemu sie nie podoba to ze login_check.php wywala pojedyncze slowa.
Kicok
Cytat("wikipedia.pl")
AJAX (ang. Asynchronous JavaScript and XML)


AJAX chce pobrać dane w formie XML'a, a ty wysyłasz zwykły tekst (dlatego wywala błąd składni).
Jeśli nie chce ci się tworzyć zaawansowanych plików XML, to wysyłaj po prostu:
Kod
<xml>
"user", "pass", "cacy", "error"
</xml>

A potem przy pomocy wyrażeń regularnych JavaScript wywal tagi '<xml>' z początku i końca pobranych danych.
fernet
Wyglada na to ze nie skumalem dobrze Ajax no ale thx przeanalizuje te tutsy jeszcze raz pozdrawiam...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.