Autor Zpráva
admin
Profil *
Dobry den. mam problem. mam skrypt auth.php, ktory includujem(resp. require) do ineho, na zistenie prihlasenia. vvsetko mi to u mna na localhoste funguje, avsak, ked som to nahral na hosting, zrazu ma to nechce prihlasit. tu je kod suboru auth.php :
<?php
require ("settings/user.php");
session_start();
session_register("user");
session_register("pswd");
session_register("logged");
if(!isset($_SESSION["user"])){
$_SESSION["user"]=$_POST['user'];
$_SESSION["logged"]="true";
}
if(!isset($_SESSION["pswd"])){
$_SESSION["pswd"]=$_POST['pswd'];
}
if($_SESSION["user"]!=$user or $_SESSION["pswd"]!=base64_decode($pswd)){
session_start();
$_SESSION = array();
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}
session_destroy();
Header ("Location: ./login.php?login=false);
}

?>


neviete, v com by mohla byt chyba?
Joker
Profil
admin
if($_SESSION["user"]!=$user or $_SESSION["pswd"]!=base64_decode($pswd)){
Kde se vezme proměnná $pswd?
admin
Profil *
tuto: require ("settings/user.php");
Joker
Profil
Aha. Nějaká chybová hláška?

Mimochodem, asi bych nejdříve porovnal a až pak v případě shody uložil do session.
admin
Profil *
ziadna chybova hlaska, jedine, co to urobi, prehodi ma to na login.php?login=false (podla hlavicky) a napise ze sa nepodarilo prihlasit (to je obsah tej stranky login.php?login=false)
Jonas Serych
Profil
Taky jde o to co je to za hosting, někde sessny dost zlobí. zkuste se podívat do php_info() a porovnat radky ktere se týkají SESSen s těmi na localhostu
joe
Profil
1. Proč máš v kódu 2x session_start() ?
2. session_register se dnes nepoužívá.
3. Zápis $_SESSION = array(); se mi ani trochu nelíbí, zvlášť když bys v systému používal sessions i k něčemu jinému než přihlašování.
4. I přes ten hrůzostrašnej nezformátovanej kód by to mělo fungovat.
5. Zkus si vypsat sessions hned po začátku jejich nastartování třeba pomoci var_dump()

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0