проблем с cookie

antique

Registered
ох нещо се ебава и то яко права си в логина проверката и после създавам така :

$_SESSION['username'] = $post_username;
setcookie('username','12345678',time()+3600*24*2);

така попринцип би трябвало да се е създала сесия и бисквитка

и след това като искам да вида нали има създадено coocie права следното :

if($_SESSION['username'])
{

if(isSet($_COOKIE['username']))

{
echo "ima";
}
else {
echo "nemaaa";
}


}


и ми искарва че няма какво става нз дайте малко помощ.
 
session_start();
ob_start();

ini_set('display_errors', 1);
error_reporting(E_ALL);

if(isset($_SESSION['username']))
{
echo "Има сесийна променлива";
}
elseif(isset($_COOKIE['username']))
{
echo 'има бисквитка';
}
Бъркаш в логиката!
Сега какво ти дава?
 
пак е същото проверих даже и в браузера намерих си бисквитката е записана но като резултат пак същото :shock:
 
emagi каза:
session_start();
ob_start();

ini_set('display_errors', 1);
error_reporting(E_ALL);

if(isset($_SESSION['username']))
{
echo "Има сесийна променлива";
}
elseif(isset($_COOKIE['username']))
{
echo 'има бисквитка';
}
Бъркаш в логиката!
Сега какво ти дава?

давами че има само сесия :shock:
 
Ето

Код:
<?
session_start();
ob_start();

$_SESSION['username']="username";
setcookie('username', '1', time()+3600*24);

if(isset($_SESSION['username']) AND !isset($_COOKIE['username']))
{
echo "Има само сесийна променлива !";
}
elseif (!isset($_SESSION['username']) AND isset($_COOKIE['username']))
{
echo "Има само бисквидена променлива !";
}
elseif (isset($_SESSION['username']) AND isset($_COOKIE['username']))
{
echo "И двете съществуват !";
}
elseif (!isset($_SESSION['username']) AND !isset($_COOKIE['username']))
{
echo "Няма нищо .. ";
}
?>
 
antique каза:
emagi каза:
session_start();
ob_start();

ini_set('display_errors', 1);
error_reporting(E_ALL);

if(isset($_SESSION['username']))
{
echo "Има сесийна променлива";
}
elseif(isset($_COOKIE['username']))
{
echo 'има бисквитка';
}
Бъркаш в логиката!
Сега какво ти дава?

давами че има само сесия :shock:

Еми както аз съм ти го дал, още при първата проверка==true и спира.
Може да промениш скрипта на следното:
$_SESSION['username'] = $post_username;
setcookie('username','12345678',time()+3600*24*2);

session_start();
ob_start();

ini_set('display_errors', 1);
error_reporting(E_ALL);

if(isset($_SESSION['username']))
{
echo "Има сесийна променлива";
}
if(isset($_COOKIE['username']))
{
echo 'има бисквитка';
}
 
благодаря ви мн на сички аз бех пропуснал една огромно тъпа грешка файла в който съсздавах бисквитката беше в една папка а този който проверявах беше извън нея и неставаше нищо но го оприх а може ли да ми дадете съвет за логин форма какво е най безопасно да записвам и да сравнявам защото ако записвам в бисквитката името и паролата неми звучи мн добре.
 
Е защо ти е да записваш паролата някаде ? Нужно ти е единствено да запишеш някаде името, но е напълно неприемливо, да го записваш в бисквитка, защото тя може да бъде лесно редактирана, и да ти скапе системата, да речем след успешен вход в системата, искаш да запишеш името на логнатия потребител го записваш в някаква сесия тоест

$_SESSION['logged']=$username;

Това е пример, и вече когато искаш да изведеш логнатия потребител

echo ($_SESSION['logged']);

Така ще си правиш и проверки, дали е логнат или не..
 
kulov каза:
Е защо ти е да записваш паролата някаде ? Нужно ти е единствено да запишеш някаде името, но е напълно неприемливо, да го записваш в бисквитка, защото тя може да бъде лесно редактирана, и да ти скапе системата, да речем след успешен вход в системата, искаш да запишеш името на логнатия потребител го записваш в някаква сесия тоест

$_SESSION['logged']=$username;

Това е пример, и вече когато искаш да изведеш логнатия потребител

echo ($_SESSION['logged']);

Така ще си правиш и проверки, дали е логнат или не..


ох брато тука става въпрос за съвсем друго защо искам да го записвам еми защото ми трябва искам да ме запомни след като излезна и пак влезна в браузера това бес бисквитка нестава.
 
Така кажи, но то изобщо не е нужно да записваш нито име, нито парола, след успешен вход слагаш ето този код :

setcookie('logged', '1', time()+3600*24);

и над кода си правиш проверка дали съществува тази бисквитка, ако съществува съответно извеждаш профила, ако ли не формата за логин -

if (isset($_COOKIE['logged']))
{
//Кода за профила
}
else
{
//Щом не е логнат формата и кода ..
}

нека ти разясня за този първия код, ако не си наясно, и по-точно това в края, в момента както е кода, тази бискида ще съществува 24 часа, тоест 3600 са секундите в един час, а 24 са съответно 24 часа .. което е 1 ден :D и да речем ако искаш два дни става 3600*48 .. и така .. :)
 
kulov каза:
Така кажи, но то изобщо не е нужно да записваш нито име, нито парола, след успешен вход слагаш ето този код :

setcookie('logged', '1', time()+3600*24);

и над кода си правиш проверка дали съществува тази бисквитка, ако съществува съответно извеждаш профила, ако ли не формата за логин -

if (isset($_COOKIE['logged']))
{
//Кода за профила
}
else
{
//Щом не е логнат формата и кода ..
}

нека ти разясня за този първия код, ако не си наясно, и по-точно това в края, в момента както е кода, тази бискида ще съществува 24 часа, тоест 3600 са секундите в един час, а 24 са съответно 24 часа .. което е 1 ден :D и да речем ако искаш два дни става 3600*48 .. и така .. :)

ох брато нищо лично ама несъм некой малумник и изобщо не питам за това по точно за нещо подобно но не това което ти ми обясняваш като на малумен. Нема значение аз ше си го направя.
 
Код:
а може ли да ми дадете съвет за логин форма какво е най безопасно да записвам и да сравнявам защото ако записвам в бисквитката името и паролата неми звучи мн добре.

Дадох ти съвет как и какво да записваш, не било това !


Код:
искам да го записвам еми защото ми трябва искам да ме запомни след като излезна и пак влезна в браузера това бес бисквитка нестава.

Написах ти как да си го направиш, пак не било това, какво искаш реално ?
 

Back
Горе