Hoi,

Ik ben niet goed in php (gebruik alleen bestaande scripts).
Ik heb volgend stuk code dat ik wil aanpassen naar meerdere users en passwords:

if (!isset($_SESSION['user'])) {
$user = '';
$pass = '';
if (isset($_POST['login'])) {
$user = strtolower(trim($_POST['user']));
$pass = $_POST['pass'];
$errors = array();
if ($user == '' || $user != 'admin') {
$errors['user'] = '';
}
if ($pass == '' || $pass != '123456') {
$errors['pass'] = '';
}
if (empty($errors)) {
$_SESSION['user'] = $user;


Kan iemand me zeggen hoe ik dit stuk code dan moet aanpassen?
Alvast bedankt hoor!

fvd
MArtijn,

Nog steeds niet vrees ik :-(
Terug een 500 internal...

Hier is nog even wat ik nu in totaal heb:

<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
?>


<?php session_start();?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>CMS</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="main">
<h1>CMS</h1>
<?php
if (empty($_POST) && isset($_GET['action'])) {
        $action = $_GET['action'];
        switch ($action) {
            case 'logout':
                session_unset();
                session_destroy();
                break;
    }
}
if (!isset($_SESSION['user'])) {
    $user = '';
    $pass = '';
    
    if (isset($_POST['login'])) {
        $user = strtolower(trim($_POST['user']));
        $pass = $_POST['pass'];

        $aUserLogin = array(
            'piet1' => 'geheim1',
            'piet2' => 'geheim2',
            'piet3' => 'geheim3',
            'piet4' => 'geheim4',
            'piet5' => 'geheim5'            
            );
        
        
        if( isset($aUserLogin[$user])
            && $aUserLogin[$user] == $pass )
        {
            // Login gegevens zijn goed
            $_SESSION['user'] = $user;
        }
        else
        {
            // Login gegevens zijn fout
        }
    }
}

// Als gebruiker ingelogd is
if( isset($_SESSION['user']) )
{
    //print_r($_SESSION['user']);
}
?>
<div id="headertext">
    <p class="l">You are logged in as <strong><?php echo $user?></strong>.</p>
    <p class="r"><a href="?action=logout">Logout</a></p>
</div>
<?php
    if (isset($_POST['edit'])) {
        if (file_put_contents('homecontent.txt', $_POST['homecontent']))
            echo '<p class="succes">Your changes are saved.</p>', "\n";
    }
    $homecontent = file_get_contents('homecontent.txt');
?>
<form method="post" action="">
    <p>Here you can edit your homepage text:</p>
    <textarea name="homecontent" id="homecontent" rows="20" cols="55"><?php echo $homecontent?></textarea>
    <p><button type="submit" name="edit">Save changes</button></p>
</form>
<?php } else {?>
<form method="post" action="" id="login">
    <p>
        <label for="user">Username:</label><input type="text" name="user" id="user" value="<?php echo $user?>" />
    </p>
    <p>
        <label for="pass">Password:</label><input type="password" name="pass" id="pass" value="<?php echo $pass?>" />
    </p>
    <p>
        <button type="submit" name="login">Login</button>
    </p>
</form>
<?php }?>
</div>
</body>
</html> 
Filip Van Daele op 30/09/2010 21:23:35

blanco pagina...

Martijn's code heeft dan ook geen outpout, eh?

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

Geen uitvoor voor session_start() dus ook geen enters.

Thomas de Roo op 30/09/2010 21:52:09

[quote="Filip Van Daele op 30/09/2010 21:23:35"]
blanco pagina...

Martijn's code heeft dan ook geen outpout, eh?
[/quote]
hehe ;D

[edit]

Je hebt een error in de code:

Zoek:
<?
// Als gebruiker ingelogd is
if( isset($_SESSION['user']) )
{
//print_r($_SESSION['user']);
}
?>

en vervang door:
<?
// Als gebruiker ingelogd is
if( isset($_SESSION['user']) )
{
$user = $_SESSION['user'];
?>

Je moet dus een } verwijderen.
aangepast zo, geen lege regels of zo, nog steeds blanco (500)
Zie edit ^^^^
Haha! works like a charm...
Hartelijk dank iedereen (vooral Martijn ;-) )
Jullie hebben me voortreffelijk geholpen!

Beste groeten,
Filip

Reageren