heey hoi,

ik zoek eigenlijk een inlogsysteem in php, voor een hele grote groep met 1 inlog naam en wachtwoord. wanneer iemand dan heeft in gelogt dat diegene dan naar een soort indexpagina gaat en daar kan kiezen naar de verschillende pagina's een stuk of 5 maximaal, meer zullen het er niet worden.

ik heb dit nodig voor bij mij op het werk, waar ze voor de schooljeugd een soort inlogpagina willen hebben en achter deze pagina moet dan informatie komen voor de jeugd. en ook nog een keer een kalender waarop iedereen kan invullen wanneer hij of zij kan werken.
maar dat is toekomst.

wie o wie kan mij helpen, ik heb hier al veelvuldig gezocht en geprobeerd, maar mijn php kennis is ongeveer niveau beginneling...

hij is nog steeds niet beveiligd, hier is de code, ik kom er niet uit...

<?php
session_start();

if(isset($_SESSION['logged_in']))
{
    ?>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    <style type="text/css">
        @import 'login.css';
    </style>
    </head>

    <body>
    <p class="login">Hey hey welkom op deze beveiligde pagina</p>
    </body>
    </html>
    
    <?php
}
else 
header('Refresh: 2; url=http://www.celpiavio.nl/baas/index.php');
echo 'Not'; {
    // Stuur gebruiker terug met
    // bijvoorbeeld de functie header();

} 
?> 




het is de bedoeling dat deze pagina beveiligd is maar iedereen kan er zo naar toe...
http://www.celpiavio.nl/baas/index2.php

hier onder de code van het inlog scherm

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
session_start();

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    /* Gebruikersnaam en Wachtwoord */
    $Gebruikersnaam = "test";
    $Wachtwoord = "test"; // admin
         
    /* Haalt de geposten dingen op en beveiligt ze */
    $Post_Gebruikersnaam = htmlspecialchars($_POST['username']);
    $Post_Wachtwoord = htmlspecialchars($_POST['password']);
    
    /* Kijkt of de invoer veld ingevuld zijn zo niet
    Geeft die een error weer */
    if (empty($Post_Gebruikersnaam))
    {
         $error = '<br>Vul een gebruikersnaam in.';
    }
    if (empty($Post_Wachtwoord))
    {
        $error .= '<br>Vul een wachtwoord in.';
    }
    if ($Post_Wachtwoord != $Wachtwoord || $Post_Gebruikersnaam != $Gebruikersnaam)
    {
         $error .= '<br>Gebruikersnaam of Wachtwoord kloppen niet.';
    }
    
    if(isset($error))
    {
         echo 'Verbeter het volgende:';
         echo $error;
         exit;
    }
    else
    {
         /* Pagina die je krijgt als je ingelogd bent */
         $_SESSION['logged_in'] = true; 
header('Refresh: 2; url=http://www.celpiavio.nl/baas/index2.php');
echo 'Woei, gelukt je bent nu ingelogd, je wordt doorgestuurd';

         echo '';
    }
}
else
{
?> 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
        @import 'login.css';
    </style>
</head>

<body>
<form method="post" action="#" class="login">
<h1>Inlogscherm</h1>
<p>
<label for="username">username:</label>
<input id="username" name="username" type="text">
</p>
<p>
<label for="password">password:</label>
<input id="password" name="password" type="password">
<input type="submit" value="inloggen">
</p>
</form> 
</body>
</html>
<?php
}
?> 


kan iemand vertellen wat er nu fout staat?
hij is nog steeds niet beveiligd, hier is de code, ik kom er niet uit...

<?php
session_start();

if(isset($_SESSION['logged_in']))
{
    ?>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    <style type="text/css">
        @import 'login.css';
    </style>
    </head>

    <body>
    <p class="login">Hey hey welkom op deze beveiligde pagina</p>
    </body>
    </html>
    
    <?php
}
else 
header('Refresh: 2; url=http://www.celpiavio.nl/baas/index.php');
echo 'Not'; {
    // Stuur gebruiker terug met
    // bijvoorbeeld de functie header();

} 
?> 




het is de bedoeling dat deze pagina beveiligd is maar iedereen kan er zo naar toe...
http://www.celpiavio.nl/baas/index2.php

hier onder de code van het inlog scherm

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
session_start();

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    /* Gebruikersnaam en Wachtwoord */
    $Gebruikersnaam = "test";
    $Wachtwoord = "test"; // admin
         
    /* Haalt de geposten dingen op en beveiligt ze */
    $Post_Gebruikersnaam = htmlspecialchars($_POST['username']);
    $Post_Wachtwoord = htmlspecialchars($_POST['password']);
    
    /* Kijkt of de invoer veld ingevuld zijn zo niet
    Geeft die een error weer */
    if (empty($Post_Gebruikersnaam))
    {
         $error = '<br>Vul een gebruikersnaam in.';
    }
    if (empty($Post_Wachtwoord))
    {
        $error .= '<br>Vul een wachtwoord in.';
    }
    if ($Post_Wachtwoord != $Wachtwoord || $Post_Gebruikersnaam != $Gebruikersnaam)
    {
         $error .= '<br>Gebruikersnaam of Wachtwoord kloppen niet.';
    }
    
    if(isset($error))
    {
         echo 'Verbeter het volgende:';
         echo $error;
         exit;
    }
    else
    {
         /* Pagina die je krijgt als je ingelogd bent */
         $_SESSION['logged_in'] = true; 
header('Refresh: 2; url=http://www.celpiavio.nl/baas/index2.php');
echo 'Woei, gelukt je bent nu ingelogd, je wordt doorgestuurd';

         echo '';
    }
}
else
{
?> 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
        @import 'login.css';
    </style>
</head>

<body>
<form method="post" action="#" class="login">
<h1>Inlogscherm</h1>
<p>
<label for="username">username:</label>
<input id="username" name="username" type="text">
</p>
<p>
<label for="password">password:</label>
<input id="password" name="password" type="password">
<input type="submit" value="inloggen">
</p>
</form> 
</body>
</html>
<?php
}
?> 


kan iemand vertellen wat er nu fout staat?
ho sorry, iedereen die ik vraag om te testen, zegt het zelfde als jou, maar waneer ze zijn ingelogd zien zij het woordje NOT ook...
Ok, jij deed het voorkomen alsof de pagina voor iedereen bereikbaar was:
het is de bedoeling dat deze pagina beveiligd is maar iedereen kan er zo naar toe...

Maar dan gaat er blijkbaar iets fout met het het inloggen. Iedereen krijgt wel gewoon de bevestiging te zien dat het inloggen gelukt is?
iedereen krijgt de bevestiging van het login script, van je bent in gelogd je wordt nu doorgestuurd en dan komen ze op index2.php, daar heb ik nu dan tijdelijk staat welkom op onze beveiligde pagina, maar daar onder staat het woordtje NOT dat is het vreemde


en wat ik bedoelde met iedereen kan er zo naar toe was dat ze gewoon de tekst kregen te zien van welkom op onze beveiligde pagina...


maar dat woordje NOT enig idee waarom je die blijft zien?
Eh ja ik zie het al, je hebt de { op regel 25 van de code op index2.php verkeerd staan. Deze moet direct achter de else op regel 23.
oleee opgelost , moet zo'n code altijd buiten de { } staan? of kan hij daar ook tussen?


nog een idee voor een uitlog knop, ik dacht zelf gewoon een button maken die het venster sluit. simpel idee?

(net achter gekomen)
foutje al weer opgelost
Netter is om de sessies ook de vernietigen bij het uitloggen. Kijk ook even in dit topic, daar staat wel een mooi scriptje in dat je kunt gebruiken (die van Jan).
ohkee ik ga het ff uitzoeken bedankt voor nu...

Reageren