Hallo,

Ik ben bezig met een site aan het maken en ik heb het volgende 'probleem'.

Ik heb dus een inlogsysteem gedownload van (ja sorry, de concurent) een site (http://phpfreakz.nl/library.php?sid=8477)...

Nu wil ik dat er een soort van status komt net zoals hierboven deze pagina.. B.v. dat > Ingelogd als: [naamuser] en dan nog wat links die je alleen te zien krijgt als je ingelogd bent.

Alleen het probleem met het script dat er voor zorgt dat alleen users de pagina mogen zien, is dat het alles na de include ( <?php include("ingelogd.php"); ?> ) niet meer wordt getoond. Daardoor wordt gewoon meer dan de helft dat wel op de pagina zichtbaar moét zijn, weggelaten.

Dit is het script die er voor zorgt dat het alleen voor ingelogde mensen zichtbaar is:

<?php

$controle=1;

if(isset($_SESSION['ingelogd'])&&$_SESSION['ingelogd']==true){

$id=$_SESSION['id'];

$actief = mysql_query("SELECT actief FROM $tabel_naam WHERE id='$id'");

$actief = mysql_result($actief, 0);

if($actief==0){

$controle=0;

$titel = "Je account is niet actief";

$body="<h1>Je account is niet actief</h1>

Je account is niet actief. Controleer het e-mail adres dat je hebt ingevuld bij je aanmelding en volg de link die in de mail staat";

}

if($controle==1&&$_SERVER['REMOTE_ADDR']!=$_SESSION['ip']){

$controle=0;

$titel = "Je probeert in te breken";

$body="<h1>Je probeert in te breken</h1>

Je probeerd in te breken via een andere computer, want het ip-adres waarmee je ingelogd bent is niet hetzelfde als het ip waar je nu vandaan komt.";

}

} else {

if(isset($_COOKIE['u'])&&isset($_COOKIE['p'])){

$u = $_COOKIE['u'];

$p = $_COOKIE['p'];

for($i=0; $i<4; $i++){

$u = base64_decode($u);

$p = base64_decode($p);

}

$id = $u.$p;

for($i=0; $i<7; $i++){

$id = base64_decode($id);

}

$ingelogd_resultaat = mysql_query("SELECT ingelogd FROM $tabel_naam WHERE id='$id'");

$ingelogd = mysql_result($ingelogd_resultaat, 0);

if($ingelogd==1){

$ip_db_resultaat = mysql_query("SELECT ip FROM $tabel_naam WHERE id='$id'");

$ip_db = mysql_result($ip_db_resultaat, 0);

if($ip_db != $_SERVER['REMOTE_ADDR']){

$controle=0;

$titel = "INDRINGER!!!!!";

$body = "Er klopt iets niet... <a href=\"?p=login\">Log in</a>";

} else {

$_SESSION['ingelogd'] = $ingelogd;

$_SESSION['id'] = $id;

$_SESSION['ip']= $_SERVER['REMOTE_ADDR'];

echo ("blabla");

}

} else {

$controle=0;

$titel = "INDRINGER!!!!!";

$body = "Er ging iets fout. <a href=\"?p=login\">Log nog een keer in</a>";

}

} else {

$controle=0;

$titel = "Je bent niet ingelogd";

$body="<a href=\"?p=login\">Log in</a>";

}

}

if($controle==0){

die("");

}

?>
<b>Je bent ingelogd</b> | <a href="?p=loguit" class="logo">Log uit</a>

----

Wat voor code ofzo moet ik gebruiken na dat

<b>Je bent ingelogd</b> | <a href="?p=loguit" class="logo">Log uit</a>

zodat de rest van de pagina wel weer zichtbaar wordt voor alle gasten (= niet ingelogde mensen)?

Hulp zou hardstikke fijn zijn ;-) alvast bedankt dus!

Groeten,

Stefan
er staat nergens exit(); ofzo, je output moet gewoon doorgaan...
Ehmmz... mjah... ksnap wel ongeveer wat je bedoelt maar probleem is er nog steeds...

Wie kan (ook) helpen =)?
Je hebt wel staan if(isset($_SESSION['ingelogd'] enzo, binnen die if moet ALLES staan wat die moet doen wanneer je bent ingelogd. En DIRECT na die if moet je else {
en dan alles neerzetten wat die moet doen als je niet bent ingelogd!!
}

Reageren