Wel ingelogd, maar niets laten zien

Gestart doorRik25 reacties34 weergaven

26 berichten · pagina 1 van 2

Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Heya one2xs,

Ik ben bezig met een hele grote uitbreiding op een systeem van mij, en nu heb ik daarvoor ook een inlog-gedeelte.

Hij logt gewoon goed in, en voor het debuggen krijg ik ook gewoon dit te zien:

Array ( [id] => 1 [hash] => 0c5c147af901bb2489b987a2d034e76fcb65530b5167e8174c4c086f786dcbe4 [username] => Guildjuhh )


Echter, als ik naar een andere pagina probeer te gaan, en hiervoor

if(isset($_SESSION[hash])) { }


Gebruik, gebeurd er verder niets, hij laat niet zien wat de ingelogde personen horen te zien...
Kan iemand mij helpen? hypocrite
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
En als je dit doet:
if(!isset($_SESSION[hash])) { print_r($_SESSION); }

krijg je dan daar ook de dump met die hash erin?
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
http://forum.one2xs.com/Werewolf/login.php

Naam: test
WW: test

Staat de $_SESSION dump in meteen nadat je bent ingelogd (en de sessies dus geset zijn)
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Maar je hebt dat stukje erin wat ik zei dus?
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
UH, ik heb zegmaar in het je bent ingelogd gedeelte dit staan:
echo
 . PRINT_R($_SESSION). 
;

En nu jou dingetje
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Dus je hebt zoiets:

echo
 . PRINT_R($_SESSION). 
;

if(isset($_SESSION[hash]))
{

of niet?

Post anders eens iets meer code, wat werkt wat handiger. biggrin
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Stukje als je bent ingelogd.

} else {
            $hash = hash(sha256, hash(sha512,$_SERVER[REMOTE_ADRR] . $res[username] . microtime()));
            mysql_query("INSERT INTO login_sessions (userid,hash,ip) VALUES (".$res[id].",".$hash.",".$_SERVER[REMOTE_ADDR].")") or die (mysql_error());
            echo <div class="green_error">Ingelogd</div>;
            $_SESSION = array("id" => $res[id], "hash" => $hash, "username" => $res[username]);
            if(!isset($_SESSION[hash])) { print_r($_SESSION); }
        }


Stukje dat ik wil laten zien als je niet bent ingelogd (en je dus nog geen session hash hebt)

[COLOR= #0000BB]<?php[/COLOR] [URL="http://www.php.net/if"]if[/URL][COLOR= #007700](![/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]hash[/COLOR][COLOR= #007700]])) {[/COLOR]?>
                        <li><a href="register.php">Registreer</a></li>
                        <li><a href="login.php">Login</a></li>
                    [COLOR= #0000BB]<?php[/COLOR] [COLOR= #007700]}[/COLOR] ?>
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
En je probleem is dat hij die Registreer en Login ook laat zien als je bent ingelogd?
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Juist, en nog een ander deel waar ik if(isset(...)) { heb staan laat hij juist NIET zien en moet juist WEL... yummie
0
Tim

Lid

Berichten
712
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
je hebt session_start(); bovenaan je pagina staan?
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
*slaat voor kop*

Ik wist gewoon dat het een stomme fout was...
Ik had die bovenaan in een bestand gezet, maar dat bestand had ik in een ander map opgeslagen, dus is bij het uploaden de oude settings .php(dus zonder session_start) gupload =.=
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
emo
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Maar nu odet het uitloggen her weer niet :l

[COLOR= #0000BB]<?php[/COLOR] [URL="http://www.php.net/include"]include[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]header.php[/COLOR][COLOR= #007700]);[/COLOR] ?>   
<h1>Logout</h1>
[COLOR= #0000BB]<?php[/COLOR]
    [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]hash[/COLOR][COLOR= #007700]])) {[/COLOR]
        [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"DELETE FROM login_session WHERE hash = "[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]hash[/COLOR][COLOR= #007700]] .[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700]);[/COLOR]
        [URL="http://www.php.net/unset"]unset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700]);[/COLOR]
        [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]<div class="green_error">Je bent uitgelogd op je laatste sessie.</div>[/COLOR][COLOR= #007700];
    }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
        [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]<div class="red_error">Geen ingelogde sessie gevonden</div>[/COLOR][COLOR= #007700];
    }[/COLOR]
?>
[COLOR= #0000BB]<?php[/COLOR] [URL="http://www.php.net/include"]include[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]footer.php[/COLOR][COLOR= #007700]);[/COLOR] ?>
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Daar heb je wel session_start? emo
0
Rik

Lid · Topicstarter

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
In header.php staat een inlcude naar settings.php en daarin staat helemaal bovenaan session_start ja yummie
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren