Autor Zpráva
Akali
Profil
Ahoj, lámu se s tím už docela dlouho a pořád mi to nejde.. Nefunguje, tím myslím, že po vypnutí/zapnutí prohlížeče nejsem přihlášen.. Mohl by jste mě někdo nasměrovat cestou ke zdárnému konci?

Tento script mám zavolaný na každý stránce..

<?php
ob_start();
session_start();


if(isset($_POST['jmeno'])){
require_once './db_registrace.php';
    $name = $_POST['jmeno'];
    $pass = md5($_POST['heslo']);
    $query = mysql_query("SELECT * FROM `uzivatele` WHERE `prezdivka` = '$name' and `heslo` = '$pass'") or die (mysql_error());

        $Vysledek = mysql_fetch_array($query);
        if($Vysledek['prezdivka']){
             
        $HodnotaCookie1=$name;
        $HodnotaCookie2=$pass;
        $CookiePlatiDo=time()+31536000;
        @setcookie("vbprihllogin", $HodnotaCookie1, $CookiePlatiDo);
        @setcookie("vbprihlpw", $HodnotaCookie2, $CookiePlatiDo);
             
             
               
            $_SESSION['prihlasen'] = 1;
            $_SESSION['login'] = $Vysledek['prezdivka'];
            $_SESSION['UserId'] = $Vysledek['id'];
            $_SESSION['UserWeb'] = $Vysledek['web'];
            $_SESSION['UserMail'] = $Vysledek['mail'];
            $_SESSION['Prava'] = $Vysledek['prava'];
            $bl="".$_SERVER['HTTP_REFERER']."?login=yes";
        header("location: $bl");
        exit;
        }else{
        $bl="".$_SERVER['HTTP_REFERER']."?login=no";
        header("location: $bl");
        exit;

}
mysql_free_result($query);
}

If(!Empty($_COOKIE['vbprihllogin'])){

    $query = mysql_query("SELECT * FROM `uzivatele` WHERE `prezdivka` = '".$_COOKIE['vbprihllogin']."' and `heslo` = '".$_COOKIE['vbprihlpw']."'") or die (mysql_error());

        $Vysledek = mysql_fetch_array($query);
        if($Vysledek['prezdivka']){
               
            $_SESSION['prihlasen'] = 1;
            $_SESSION['login'] = $Vysledek['prezdivka'];
            $_SESSION['UserId'] = $Vysledek['id'];
            $_SESSION['UserWeb'] = $Vysledek['web'];
            $_SESSION['UserMail'] = $Vysledek['mail'];
            $_SESSION['Prava'] = $Vysledek['prava'];
            $bl="".$_SERVER['HTTP_REFERER']."?login=yes";
        header("location: $bl");
        exit;
        }else{
        $bl="".$_SERVER['HTTP_REFERER']."?login=no";
        echo "špatné údaje";
        header("location: $bl");
        exit;


}
mysql_free_result($query);
}


ob_end_flush();
?>
pcmanik
Profil
Akali:
Session sa zmaze po zavreti prehliadaca, mohol si si aspon precitat dokumentaciu... Na trvale prihlasovanie sa pouziva cookies. Ale existuje aj direktiva v php, ktora zabrani zmazaniu session po zavreti prehliadaca.
Akali
Profil
Věděl jsem, že se po zavření session maže.. Také jsem kvůli tomu zkoušel uživatele přihlásit takto

$query = mysql_query("SELECT * FROM `uzivatele` WHERE `prezdivka` = '".$_COOKIE['vbprihllogin']."' and `heslo` = '".$_COOKIE['vbprihlpw']."'") or die (mysql_error());
a uložení do session..

Jak tedy aspoň zabráním mazání session?
miskith
Profil
session_set_cookie_params
pcmanik
Profil
Akali:
Session niesu urcene na dlhodobe skladovanie dat. Radsej si precitaj toto trvale prihlasovanie.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0