[PHP] Wykrywanie zalogowanego użytkownika przy logowaniu za pomocą cookies 4684 3

O temacie

Autor Sauron

Zaczęty 15.10.2012 roku

Wyświetleń 4684

Odpowiedzi 3

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Robię stronę (taką prywatną) zalogują się na nią tylko 2 użytkownicy i chce sprawdzić który użytkownik jest zalogowany próbowałem tak (przy logowaniu):

$myLogin = $_POST['login'];
$myPass = $_POST['pass'];
if ($myLogin == $lukas_username AND $myPass == $lukas_pass) {
setcookie("user","lukas",time()+1);
header("Location: home.php");
}else{
if ($myLogin == $kamil_username AND $myPass == $kamil_pass) {
setcookie("user","kamil",time()+1);
header("Location: home.php");
}else{
header("Location: index.php");
}
}

a na stronie głównej (home.php) tak:
<?php
&#36;myuser;

if (&#36;_COOKIE[&#39;user&#39;] == "lukas") {
&#36;myuser = "Łukasz";
}

if (&
#36;_COOKIE[&#39;user&#39;] == "kamil") {
&#36;myuser = "Kamil";
}

?>




...



<?php
echo "<h1>Witaj, " .&#36;myuser."&#33;</h1>";
?>


niestety widać tylko takie coś:
"Witaj,!"

Co robię źle?
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.


Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Uprościłem trochę kod teraz mam tak:
$myLogin = $_POST['login'];
$myPass = $_POST['pass'];
if ($myLogin == $lukas_username AND $myPass == $lukas_pass) {
setcookie("user","Łukasz",time()+1);
header("Location: home.php");
}else{
if ($myLogin == $kamil_username AND $myPass == $kamil_pass) {
setcookie("user","Kamil",time()+1);
header("Location: home.php");
}else{
header("Location: index.php");
}
}
(tam było prawie bez zmian, tylko cookie jest zmienione)
i strona główna:
<?php
&#36;myuser = &#36;_COOKIE[&#39;user&#39;];
echo "<h1>Witaj, " .&#36;myuser."&#33;</h1>";
?>


Ale dalej to samo. Nie wiem czy przeglądarka może przechowywać cookies z polskimi znakami.

EDIT: Nie jestem pewien ale coś mi się zdaje że powaliłem z tym: setcookie("...","...", I TU MI COŚ NIE PASUJE Z TYM CZASEM)

EDIT!!!!: Działa!!! Zmieniłem tylko to z czasem teraz jest tak: setcookie("user","Łukasz",time()+60 * 60 * 24 * 30); i ciasteczko będzie aktywne przez 30 dni :D  Teraz zmienie tylko czas na hmmm.... myśląc o wolnym internecie 10 min. Temat do zamknęcia
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry