kostenloser Webspace werbefrei: lima-city


login --- modus geht nicht

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    also irgendwie ich ahb in der tabelle users von mir eine spalte rang angelegt admins haben da admin und normale user halt normal
    der login funzt nur das mit dem rang igendwie net so hier mal der code:
    <?php
    session_start();
    ?>

    <?php
    include "connect.inc.php";

    $username = $_POST["username"];
    $passwort = md5($_POST["password"]);

    $abfrage = "SELECT username, passwort, rang FROM users WHERE username LIKE '$username' LIMIT 1";
    $ergebnis = mysql_query($abfrage);
    $row = mysql_fetch_object($ergebnis);
    echo '<table cellspacing="0" cellpadding="0" style="width: 400px; border-width: 1px;border-color: #000000;" border="1" bgcolor="#5F5F5F">
    <tr><td align="center">';
    if($row->passwort == $passwort)
    {
    $_SESSION["username"] = $username;
    echo "Login erfolgreich. <br> Schlie?e dieses Fesnter und Aktualiesiere die GP-Seite.";
    if ($row['rang'] == "admin"){
    $_SESSION["rang"] = "admin";
    echo "Login erfolgreich. <br> Schlie?e dieses Fesnter und Aktualiesiere die PG-Seite.
    <br> <a href=\"geheim.php\">Gesch?tzer Bereich</a>";
    }
    }
    else
    {
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.php\">Login</a>";
    }
    echo '</td></tr></table>'
    ?>

    so dann hier die seite geheim.php:
    <?
    session_start();
    if(!isset($_SESSION["username"]))
    {
    echo "Bitte erst <a href=\"login.php\">einloggen";
    exit;
    }
    if (isset($_SESSION["rang"])) {
    if ($_SESSION["rang"] == "admin") {
    echo '<table cellspacing="0" cellpadding="0" style="width: 400px; border-width: 1px;border-color: #000000;" border="1" bgcolor="#5F5F5F">
    <tr><td align="center">
    <a href="_add.php?kategorie=news_insert">News schreiben</a><br>
    <a href="_add.php?kategorie=download_insert">Sektion Downloads bearbeiten</a><br>
    <a href="_add.php?kategorie=agb_insert">Sektion AGB bearbeiten</a><br>
    <a href="_add.php?kategorie=projekt_insert">Sektion Projekt bearbeiten</a><br>
    <a href="_add.php?kategorie=team_insert">Sektion Team bearbeiten</a><br>
    Nur bei News muss der Titel und Autor angegeben werden.</td></tr></table>';
    }
    }
    ?>


    also wie gesagt es geht alles nur das mit dem admin nicht
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. ?hm ich hab ma kruz dr?ber geschaut
    also
    $_SESSION["rang"] sollte entweder den inhalt "user" oder "admin" haben
    $_SESSION["user"] sollte den username haben
    $_SESSION["passwort"] sollte das passwort des user haben
    das ganze kann man zwar in eine session zusammen fassen, aber bei kleinen sites is das quatsch

    so jetzt fragste in jeder site ab
    if(isset($_SESSION["user"]) && isset($_SESSION["passwort"]) && isset($_SESSION["rang"])) {
    // hier ?berpr?fste, ob das pw zum usernamen passt und der rang auch passt
    $eingeloggt = true;
    if($_SESSION["rang"] == 'admin') {
    $rang = true;
    } else {
    $rang = false
    } else {
    $eingeloggt = false;
    }

    so jetzt kannste einfach per
    if($eingeloggt && $rang) { } abfragen, ob der user eingeloggt is und admin rechte hat
    durch
    if($eingeloggt && !$rang) {} abfragen, ob der user eingeloggt is, aber nur user rechte hat
    und durch
    if(!$eingeloggt) { } ob der user nich eingeloggt is
  4. Dein Problem ist ganz einfach.
    du machst mysql_fetch_object(), behandelst $row aber wie ein array.
    mache einfach $row->rang anstatt $row['rang']
  5. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    shok das d?rfte kein unterschied machen naja aber das is keine kleine seite das soll nur erstma ein anfang sein das wird noch viel mehr dennoch versteh ich das irgendwie nicht so lucas
  6. tja jetzt k?nnte man r?tsel raten spielen, aber es w?re dochsehr nett zu sagen, wenn man dir schon helfen will, was du nich verstehst oder wo du probs hast
    denn ich sehen keine einzige stelle, die nicht zu verstehen is
    man sollte nat?rlich ein grundverst?ndniss von php haben :wink: *alopex_imitier*
  7. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    naja das kann ich schon nur ich w?rd eben auch gern wissen wegen was meine methode nicht funktioniert

    wer ein bsp sehen will hier:
    http://gmaker.gm.ohost.de/GP/index.php?section=Startseite
  8. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    sorry wegen doppelpost aber sonst sieht das evtl niemand mehr

    lucas hier ich ahbe ein problem nachdem ich es schon bearbeitet habe XD:
    Parse error: parse error, unexpected T_ELSE in /usr/export/www/hosting/gmaker/GP/index.php on line 14

    nach dem einem false hab ich schon das; gemacht aber jetzt wei? ich net wie das mit dem else gemeint ist^^
  9. mhh
    ich versteh dein prob nich :confused:
    aber gib am besten gleich noch code mit an, auf den du dich beziehst ;)

    zur fehlermeldung
    ich denke ma du hast } vergessen, aber das is ne reine vermutung
  10. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    ich hab kopiert und das geht net XD keine ahnung wo du das vergessen hast also hier die datei:

    <?//index.php
    echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">';
    echo '<html><head>
    <title>Games Page -- '.$_GET['section'].'</title>
    <link href="page.css" rel="stylesheet" type="text/css"></head><body backgrund="background.jpg">
    <link rel="shortcut icon" href="favicon.ico">';
    if(isset($_SESSION["user"]) && isset($_SESSION["passwort"]) && isset($_SESSION["rang"])) {
    // hier ?berpr?fste, ob das pw zum usernamen passt und der rang auch passt
    $eingeloggt = true;
    if($_SESSION["rang"] == 'admin') {
    $rang = true;
    } else {
    $rang = false;
    }
    }
    else {
    $eingeloggt = false;
    }
    echo "<div id=\"root\">";
    echo "<div id=\"links\">";
    include "menu.php";
    echo "</div>";
    echo "
    <div id=\"mitte\">";
    include "inhalt.php";
    echo "</div>";
    echo "<br style=\"clear:both;\" />";
    echo "</div>";
    echo "</body>";
    echo "</html>";
    ?>

    und die andere datei menu.php:

    <?
    session_start();
    echo '<html><head>
    </head><body background="background.JPG">
    <table cellspacing="0" cellpadding="0" class="menue"><tr><td width="208">&nbsp;
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <br><br><br><br><br><br><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Startseite">Startseite</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Team">Team</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Download">Download</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Projekt">Projekt</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Community<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(auser betrieb)<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="/GP/board/burningbook/">G&auml;estebuch</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Banner">Banner</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Links">Links</a><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=AGB">AGB</a><br>';
    if(!isset($eingeloggt)) {
    echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="login.php" target="_blank">LogIn</a><br>';
    }
    if(isset($eingeloggt) && !isset($rang)) {
    echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?section=Startseite&action=logout">LogOut</a><br>';
    if(isset($eingeloggt) && isset($rang)) {
    $_SESSION["admin"] = "true";
    echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="geheim.php" target="_blank">Adminbereich</a>';
    }
    //counter
    $userip = $REMOTE_ADDR;
    $server ="localhost";
    $Benutzer = "gmaker";
    $Kennwort = "harvest-moon";
    $datenbank = "gmaker";
    $tabelle = "counter";
    $zeit = "24";

    $verbindung = mysql_connect ($server,$Benutzer,$Kennwort);
    mysql_select_db("$datenbank", $verbindung);
    $sql = "SELECT * FROM $tabelle WHERE ip = '$userip'";
    $ergebnis = mysql_query($sql, $verbindung);


    while ($zeile = mysql_fetch_array($ergebnis))
    {
    $userip2 = $zeile[ip];
    $timepast = $zeile[time];
    }

    mysql_select_db("$datenbank", $verbindung);
    $sql2 = "SELECT * FROM $tabelle";
    $ergebnis2 = mysql_query($sql2, $verbindung);
    $counter = mysql_num_rows($ergebnis2);


    $timefuture = time()-3600*$zeit;

    if($userip == $userip2 && $timepast > $timefuture)

    {

    $counter = $counter + 0;

    }else{

    $counter = $counter + 1;

    }

    $ip = getenv("REMOTE_ADDR");
    $timenow = time();
    #tr?gt ihn in die Tabelle ein

    $sqlInsert = "INSERT INTO $tabelle VALUES ('$counter', '$ip', '$timenow');";
    $result = mysql_query($sqlInsert);

    echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Besucher:<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <font face='Verdana' color='#ff0000' size='2'><b>".$counter." </b></font><br>";

    echo '<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></tr></td></table>';
    ?>
  11. -.- -.- -.- :wink:
    wieso machst du auch zwei } nach der else schleife? :biggrin:

    edit :
    upps vertan
    mom ich such noch ma eben

    edit2:
    n? is doch alles richtig :confused:
  12. Autor dieses Themas

    thehm

    thehm hat kostenlosen Webspace.

    ich versteh das auch net ein } fehlt XD
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!