Autor Zpráva
BuGeR
Profil
Zdravím..
Mám problém, mam panel, vněm mam formulář na přihlášování, pak mam soubor functions.php, vněm mam php část přihlašování, vypadá asi takto:

<?php
session_start();
...
... Podmínky pokud vyplnil přihlašovací formulář
...
$_SESSION["prihlasen"] = 1; 
$_SESSION["user_id"] = $login["id"]; // - v $login jsou informace o uzivateli
...
if(isset($_SESSION["prihlasen"]) && $_SESSION["prihlasen"] == 1) {
$result = mysql_query("SELECT * FROM lf_users WHERE id='".$_SESSION["user_id"]."'");
$user = mysql_fetch_assoc($result); 
}
...
if(isset($_SESSION["prihlasen"]) && $_SESSION["prihlasen"] == 1) { $loged = true; } else { $loged = false; }
define("USER", $loged);


Pak mam soubor userpage.php
ten vypadá asi takto:
<?php
include "functions.php";
...
...
if(USER) { echo "Ahoj ".$user["name"]; }
..
?>


Jenže když se přihlásím, a spustím soubor userpage.php tak to vyhodí jen hlášku "Ahoj" přitom by to mělo vyhodit "Ahoj BuGeR".
Je to divné, protože pokud jsem udělal špatně SESSION tak by USER nevracelo TRUE.
A jsem si jistý, že SQL dotaz sem položil dobře.
Děkuji. S pozdravem BuGeR:)
fuckin
Profil
BuGeR:
Je to divné, protože pokud jsem udělal špatně SESSION tak by USER nevracelo TRUE.
Ta podmínka ti vrátí TRUE pokaždé.

Nemá tam být spíše toto?
if($loged) { echo "Ahoj ".$user["name"]; }
BuGeR
Profil
Dal jsem tam $loged a dělá to uplně to samé..
Ale spíš by mě zajímalo proč nefunguje to $user :)
fuckin
Profil
BuGeR:
Ale spíš by mě zajímalo proč nefunguje to $user :)
Porovnáváš konstantu USER, nikoli proměnou $user.

Přes var_dump() si to projeď ať vidíš kde je problém
BuGeR
Profil
Když jsem zadal var_dup($user) vrátilo mi to bool(false) .. co stím?
fuckin
Profil
Máš chybu v mysql dotazu.

Uprav tento řádek ať vidíš tu chybu
$result = mysql_query("SELECT * FROM lf_users WHERE id='".$_SESSION["user_id"]."'") or die(mysql_error());


A až to opravíš a v $user budeš dostávat správnou hodnotu, pak ještě uprav toto
<?php
include "functions.php";
...
...
if($user) { echo "Ahoj ".$user["name"]; }
..
?>
BuGeR
Profil
Opravil jsem ten $result, ale nikde se chyba neobjevila což je divné..
Když jsem dal if($user).. tak to vypsalo "Notice: Undefined variable: user ...."
To asi znamená že $user neni definováno..
Takže chyba bude asi v podmínce která obaluje to $user =..
if(isset($_SESSION["prihlasen"]) && $_SESSION["prihlasen"] == 1)

Ale nechápu co je na tom špatně..
SpotRudloff
Profil *
Tak ji utlum, napiš do výpisu proměnný @$user.
BuGeR
Profil
Nejde..
BuGeR
Profil
Už to mám..moc se omlouvám chyba byla když jsem zadával do relace user_id, id člena měl jsem $login["id"], no a u toho $login jsem nevybíral z DB id ale jen name.
Moc se omlouvám .. můžete lock
fuckin
Profil
Locknout to můžeš i ty sám jako autor tohoto vlákna. Dole to najdeš.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0