Vraag & Antwoord

Webprogrammeren & scripting

[PHP] probleem met inlog script help me A.U.B.

Anoniem
Flashhawk
3 antwoorden
  • ik heb 2 scripts :login en beveiligde admin menu

    hoe kan ik deze 2 samen voegen naar 1 met als extra dat als ik door me site surf hij checked of ik ingelogd bent en als nodig de menu weergeeft ipv steeds de login script:

    admin.php:

    <?php
    // Als je script werkt met deze regel bovenaan
    // is het een goed script
    error_reporting(E_ALL);

    // Config includen om met de MySQL databeest verbinding
    // te maken
    include("configuratie.php");

    // Kijken of het formulier is gesubmit
    if (IsSet($HTTP_POST_VARS['submit']))
    {

    // Kijken of de user wel een gebruikersnaam en pass heeft ingevuld
    if (!IsSet($HTTP_POST_VARS['password']) || !IsSet($HTTP_POST_VARS['username']))
    {
    exit("Je moet wel een password/user combinatie invullen.");
    }

    // Het wachtwoord is gecodeerd (md5), dus gaan we kijken of deze combi van user/pass ook in de DB bestaat
    $CombiCheckQ = mysql_query("SELECT username,userid,email
    FROM leden
    WHERE username = '".addslashes($HTTP_POST_VARS['username'])."'
    AND password = '".md5($HTTP_POST_VARS['password'])."'
    AND actief = 1
    ");

    // Kijken of er resultaten zijn, zoja, is de user ingelogd
    if (mysql_num_rows($CombiCheckQ) == 0)
    {
    exit("Een ongeldige user/pass combinatie is ingevoerd.");
    }

    // Sessie registreren
    $gegevens = mysql_fetch_array($CombiCheckQ);

    $HTTP_SESSION_VARS['username'] = $gegevens['username'];
    $HTTP_SESSION_VARS['userid'] = $gegevens['userid'];
    $HTTP_SESSION_VARS['email'] = $gegevens['email'];

    // Redirecten naar beveiligde_pagina.php
    if (headers_sent())
    {
    echo "<script language="JavaScript">";
    echo "document.location='beveiligde_pagina.php'";
    echo "</script>";
    } else {
    header("location: beveiligd.php");
    }

    // Stoppen met parsen
    exit();

    } else {

    // Formulier voor inloggen laten zien

    echo "<form action="admin.php" method="post">";
    echo "User: ";
    echo " <input name="username" class=regular size=10 maxlength=10><br>";
    echo "Pass: ";
    echo " <input name="password" class=regular type="password" size=10 maxlength=10><br>";
    echo "<input type="submit" class=regular name="submit" value="Log in">";
    echo "</form>";

    }
    ?>

    menu.php (beveiligd)

    <?php
    // Als je script werkt met deze regel bovenaan
    // is het een goed script
    error_reporting(E_ALL);

    // Config includen om met de MySQL databeest verbinding
    // te maken
    include("configuratie.php");

    // Voorbeeld van een pagina die je kan beveiligen
    if (!is_logged_in())
    {

    echo "Je bent niet ingelogd.";

    } else {

    echo "&nbsp;<b>Welkom: <font color=red>Admin</font><br><br>";
    echo "&nbsp;<a href="nieuwsadmin.php">Nieuws Admin</a>";
    echo "&nbsp;<a href="banneradmin.php">Banner Admin</a>";
    echo "&nbsp;<a href="uitloggen.php">Uitloggen</a><b>";

    }

    ?>

    ik include namelijk op elke site (links,nieuws) in een bepaalde venster de admin.php maar na het inloggen opend hij als uitzondering: beveiligd.php met ipv admin.php -> menu.php
    en kan alleen via beveiligd.php de admin sites bezoeken
  • je zou met cookies of sessions kunnen werken.
    Denk wel aan de tijd dat ze geldig zijn.

    t.
  • het werkt toch met sessies? ben best wel een newbie?

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.