Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]cookies
Forum PHP.pl > Forum > Przedszkole
damain1960
mam skrypt logowania: i chcę zrobić aby wyświetlało się id tak: http://site.pl/ptp.php?id= i tu id użytkownika np.1 tylko żeby to nie był tekst tylko link.

Kod
<?php
// CGI atiranyitas eltûntetése az url-bõl (lásd 4. cikk)
$reszek=explode('/',$PHP_SELF);
$PHP_SELF=$reszek[count($reszek)-1];

class Login {
    var
        $loginNev,
        $helyesBelepes,
        $voltProbalkozas;

    function Login() {
        global $kilep;
        $this->helyesBelepes = false;
        $this->voltProbalkozas = false;
        $this->loginNev = "";        
        if (isset($kilep))
        //a $kilep változóval lehet jelezni, hogy
        //ki kell léptetni a felhasználót
            $this->kileptet();
    }
    
    function beleptet() {
        global $uLogin, $uNev, $uJelszo;
        global $HTTP_SESSION_VARS;

        if (isset($uLogin)) {
        //az urlapból jöttek adatok
            $query = "SELECT username " .
                "FROM users " .
                "WHERE username='$uNev' " .
                    "AND password='$uJelszo' AND status='active'";
            if ($eredm = mysql_query($query) and mysql_num_rows($eredm)==1) {
            /* helyesek voltak az adatok -> el kell tárolni
               a session-ben a felhasználó azonosítóját */

                global $loginNev;
                $loginNev=$uNev;
                @session_register("loginNev");
                
                $this->helyesBelepes = true;
                $this->voltProbalkozas = true;
    
                $this->loginNev = $uNev;
            } else
                $this->voltProbalkozas = true;
        } elseif (isset($HTTP_SESSION_VARS["loginNev"])) {
        //session-bõl jöttek az adatok
            $this->loginNev=$HTTP_SESSION_VARS["loginNev"];
            $this->helyesBelepes = true;            
        }
        
        if (!$this->helyesBelepes) {
        //nem lepett be a felhasználó, ûrlapot kell neki kirakni
            $this->loginUrlap();
            exit();
        }        
    }
    
    function kileptet() {
        global $PHP_SELF;
        @session_unregister("loginNev");        
        @header("Location: $PHP_SELF");
    }

    function loginUrlap() {
        global $PHP_SELF;
        ?>      <br><h2 align=center>Log into your account</h2><center>
            <?= ($this->voltProbalkozas ?
                "Wrong id or password!" :
                "Please enter your detials!")?>
            <form action="<?=$PHP_SELF?>" method="post">
                <input type=hidden name=menu value=login>
                User Id: <br><input class="inp" type="text" name="uNev"><br>
                Password: <br><input class="inp" type="password" name="uJelszo"><p align="center">
                <input class="inp" type="submit" name="uLogin" value="Log-In">
            </form>
            Not registered?    Sign up <a href="index.php?menu=join&refi=<?=$refi?>">here!</a><br>
            Lost your password? Click <a href='index.php?menu=lostpassword'>here!</a>
            </font></center>
<?php
    }
}
@session_start();
?>
nospor
Poswiecasz sporo czasu na szukanie skryptow, znajdujesz jakies stare badziewia z zeszlej epoki, jeszcze przed globalnym ociepleniem.... Naprawde nie lepiej poswiecic ten czas na opanowanie podstaw? Szczegolnie ze ewidentnie muszisz cos zrobic w php o czym swiadcza wszystkie twoje posty tutaj
Niree
Ale to nie ma żadnego sensu. Ktoś sobie zmieni id użytkownika w linku i już masz nieautoryzowane logowanie. Zamiast kombinować i przerabiać jakoes gotowce, naucz się podstaw PHP i logicznego myslenia.
Tomplus
Uczysz się węgierskiego?

Jak napisali przedmówcy,
Zamiast szukać skryptów, zacznij sam je tworzyć. Od podstaw.


bo stosowanie takich zmiennych: HTTP_SESSION_VARS czy function Login() w klasie Login zamiast function __construct() to kod z PHP 4, a dzisiaj warto skupić się na najnowszej wersji PHP czyli 7 wersji.
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.