Qualistor
Legacy Member
Hallo,
Ik ben momenteel bezig een website te ontwikkelen waar een login systeem moet ingevoegd worden. Nu zit ik met een probleem ..
Eventjes de situatie uitleggen:
op de index.php pagina heb ik in de layout een form geplaatst,
die bij het verzenden login.php aanroept ( bevat de login functies etc. )
nu als er ingelogd wordt start ik een session, zoiets doe ik dus in dit stukje
daarbij stel ik ook - $_SESSION['login'] = 1; - gelijk aan 1, zodat ik weet dat de gebruiker ingelogd is.
nu op de pagina support_leden.php vormt zich het probleem.
Alles werkt prima als de gebruiker ingelogd is, dat is geen probleem.
Maar wel als een gebruiker naar support_leden.php gaat die niet ingelogd is. Daar krijg ik een foutmelding in de aard van
"Notice: Undefined index: login in /home/sites/site117/users/perdu/web/inlogsysteem/site/support_leden.php on line 9 "
nu eens uitleggen hoe ik die pagina aangepakt heb :
werkt als volgt ( of ja, kwou dat het zo werkte ) .. als je ingelogd bent, dan krijg je da pagina te zien .. niet ingelogd ga je terug naar de pagina waar je kan inloggen.
Nu zit het probleem blijkbaar in lijn 9, en deze is
maar ik include toch m'n login.php? en aangezien de gebruiker niet ingelogd is zou deze nog op 0 moeten staan, en dus ook geen error geven ?
hopelijk heb ik m'n probleempje grondig uitgelegd en kan iemand me helpen?
ik heb het tijdelijk opgelost met een refresh maarja ..
alvast ZEER erg bedankt
grtz
Ik ben momenteel bezig een website te ontwikkelen waar een login systeem moet ingevoegd worden. Nu zit ik met een probleem ..
Eventjes de situatie uitleggen:
op de index.php pagina heb ik in de layout een form geplaatst,
die bij het verzenden login.php aanroept ( bevat de login functies etc. )
nu als er ingelogd wordt start ik een session, zoiets doe ik dus in dit stukje
PHP:
<?
//sessie starten
session_start();
error_reporting(E_ALL);
//includes
include("includes/functie.php");
include("includes/config.php");
//oude users verwijderen
mysql_query("DELETE FROM leden WHERE active = 0
AND verloop < DATE_SUB( NOW(), INTERVAL 3 DAY)")or die(mysql_error());
//gesubmit?
if(isset($_POST['login'])){
$pass= md5($_POST['pass']);
//zoek gebruiker
$result= mysql_query("select * from leden where naam='".$_POST['nickname']."'
and (password='".$pass."' or temppass='".$pass."')") or die(mysql_error());
$user= mysql_fetch_object($result);
//als er een gebruiker gevonden is
if(mysql_num_rows($result) > 0){
//is hij actief
if($user->active==1){
//inloggen
$_SESSION['nickname']= $_POST['nickname'];
$_SESSION['login'] = 1;
$_SESSION['rank'] = $user->rank;
$_SESSION['userid'] = $user->id;
header("location: support_leden.php"); // VERANDERD
exit();
}
daarbij stel ik ook - $_SESSION['login'] = 1; - gelijk aan 1, zodat ik weet dat de gebruiker ingelogd is.
nu op de pagina support_leden.php vormt zich het probleem.
Alles werkt prima als de gebruiker ingelogd is, dat is geen probleem.
Maar wel als een gebruiker naar support_leden.php gaat die niet ingelogd is. Daar krijg ik een foutmelding in de aard van
"Notice: Undefined index: login in /home/sites/site117/users/perdu/web/inlogsysteem/site/support_leden.php on line 9 "
nu eens uitleggen hoe ik die pagina aangepakt heb :
PHP:
<?
error_reporting(E_ALL);
//includes
include("includes/config.php");
include("login.php");
if($_SESSION['login']==1){
$userrank= mysql_fetch_object(mysql_query("select * from rank where id=".$_SESSION['rank']));
?>
<html>
blablalblal .. de pagina die dus komt na het inloggen
</html>
<?
}else{
echo '<meta http-equiv="refresh" content="1; URL=support.php">';
}
?>
werkt als volgt ( of ja, kwou dat het zo werkte ) .. als je ingelogd bent, dan krijg je da pagina te zien .. niet ingelogd ga je terug naar de pagina waar je kan inloggen.
Nu zit het probleem blijkbaar in lijn 9, en deze is
PHP:
if($_SESSION['login']==1){
maar ik include toch m'n login.php? en aangezien de gebruiker niet ingelogd is zou deze nog op 0 moeten staan, en dus ook geen error geven ?
hopelijk heb ik m'n probleempje grondig uitgelegd en kan iemand me helpen?
ik heb het tijdelijk opgelost met een refresh maarja ..
alvast ZEER erg bedankt

grtz
