kostenloser Webspace werbefrei: lima-city


Login mit Cookies mit PHP und MySQL Datenbank

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    m****a

    ich habe ein Problem: Ich möchte zu meinem ref="/login" title="Login">Login Script eine Checkbox hinzufügen , welche bestimmt , ob ein coockie mit user-id und username erstellt wird und bei jeder seite dann überprüfen , ob die session mit uid und username oder die coockies gesetzt sind

    hier mein bisheriger code:

    index.php:
    <?php session_start(); ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Minecraft Server - Forum</title>
    <script type="text/javascript">
    
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-24137085-1']);
      _gaq.push(['_trackPageview']);
    
      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
      })();
    
    </script>
    </head>
    <body>
    <h1>Minecraft Server</h1>
    <h2>Forum</h2>
    
    <div id="login_form">
    <?php
    $login = "";
    if (!isset($_SESSION["uid"]))
        {
        if(!isset($_cookie["uid"]))
        {
            if (!isset ($_GET['login'])){}
            else
            {
               $login = $_GET['login'];
            }
            if($login == "false")
                {
                echo "Falsche Anmeldeinformationen. Bitte versuchen sie es erneut!";
                }
            echo "<form action = 'login.php' method = 'post'>
    	    <p>Benutzername : <input type = 'text' name = 'username'/> </p>
    	    <p>Passwort : <input type = 'password' name = 'password'/> </p>
    	    <p><input type = 'checkbox' name= 'stay_logged' value='yes'/>Eingeloggt bleiben</p>
            <p><input type = 'submit' name = 'submit' value = 'Einloggen'/> </p>
            </form>
            <p>Noch nicht angemeldet? - Dann schnell <a href='/forum/register1.php'>hier registrieren!</a></p>";
      	}
      	else
      	{
            $_SESSION['uid'] = $_cookie["uid"];
            $_SESSION['username'] = $_cookie["username"];
            echo "<p> Sie sind eingeloggt als ".$_SESSION["username"]." : <a href='logout.php'>Logout</a></p>";
        }
        }
    else
    	{
    		echo "<p> Sie sind eingeloggt als ".$_SESSION["username"]." : <a href='logout.php'>Logout</a></p>";
    	}
    ?>
    </div>
    
    <div id="content">
    <?php
    include_once("connect.php");
    function convertdt ($reply_date)
                {
                    $converteddate = date("d.m.Y H:i:s",strtotime($reply_date));
                    return $converteddate;
                }
    $sql = "Select * from forum_categories order by id ";
    $res = mysql_query($sql) or die (mysql_error());
    $categories = "<table width='100%' style='border-collapse: collapse;'><tr><td colspan='5'><hr /></td></tr>";
    echo"<h3>Kategorien - &Uuml;bersicht</h3>";
    if (mysql_num_rows($res) > 0  )
        {
            $categories .= "<tr style='background-color: #dddddd;'><td width='255' align='left'>Name</td><td width='50' align='center'>Themen</td><td width='50' align='center'>Beitr&auml;ge</td><td width='50'>Ansichten</td><td width='150' align='left'>Letzter Beitrag</td></tr>";
            $categories .= "<tr><td colspan='5'><hr /></td></tr>";
            while($row = mysql_fetch_assoc($res))
                {
                $id = $row['id'];
                $title = $row['category_title'];
                $description = $row['category_description'];
                $sql2 = "Select * from forum_topics where category_id = '".$id."'";
                $res2 = mysql_query($sql2) or die (mysql_error());
                $topics = mysql_num_rows($res2);
                $sql3 = "Select * from forum_posts where category_id = '".$id."'";
                $res3 = mysql_query($sql3);
                $posts = mysql_num_rows($res3);
                $sql4 = "Select * from forum_categories where id = '".$id."' limit 1";
                $res4 = mysql_query($sql4);
                if($row2 = mysql_fetch_assoc($res4))
                {
                    $reply_user1 = $row2['last_user_posted'];
                    $sql5 = "select * from forum_users where id= ".$reply_user1." limit 1";
                    $res5 = mysql_query($sql5);
                    if($row3 = mysql_fetch_assoc($res5))
                    {
                        $reply_user2 = $row3['username'];
                    }
                    $reply_date = $row2['last_post_date'];
                    $reply_topic_id = $row2['last_topic'];
                    $sql6 = "select * from forum_topics where id='".$reply_topic_id."' limit 1";
                    $res6 = mysql_query($sql6);
                    if($row5 = mysql_fetch_assoc($res6))
                    {
                        $reply_topic_name = $row5['topic_title'];
                    }
                    $category_views = $row['category_views'];
                }
                $categories .= "<tr><td><a href='view_category.php?cid=".$id."'>".$title."</a><br /><font size='-1'>".$description."</font></td><td align='center'>".$topics."</td><td align='center'>".$posts."</td><td>".$category_views."</td><td>Von ".$reply_user2."<br />Am ".convertdt($reply_date)." Uhr<br />In <a href='/forum/view_topic.php/?cid=".$id."&tid=".$reply_topic_id."'>".$reply_topic_name."</a></td></tr><tr><td colspan='5'><hr /></td></tr>";
                }
            $categories .= "</table>";
            echo $categories;
        }
    else
        {
            echo "Keine Kategorien gefunden!";
        }
    ?>
    </div>
    </body>
    </html>


    und die login.php:
    <?php
    
    session_start();
    include_once("connect.php");
    
    if (isset($_POST['username']))
        {
    	   $username = $_POST['username'];
    	   $password = $_POST['password'];
    	   $sql = "SELECT * FROM forum_users WHERE username='$username' AND password='$password' LIMIT 1";
    	   $res = mysql_query($sql) or die(mysql_error());
    	   if (mysql_num_rows($res) == 1)
                {
                $row = mysql_fetch_assoc($res);
                $_SESSION['uid'] = $row['id'];
                $_SESSION['username'] = $row['username'];
                
                echo "<script language='javascript' type='text/javascript'>
                      history.back();
                      </script>";
                }
           else
                {
                echo "<script language='javascript' type='text/javascript'>
                      history.back();
                      </script>";
                }
        }
    ?>


    Beitrag zuletzt geändert: 24.6.2011 10:58:39 von mineza
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Und deine Frage ist jetzt....?
  4. Autor dieses Themas

    m****a

    wie ich bei login.php prüfe, ob die checkbox "gecheckt" ist und dann die cockies setze

    Beitrag zuletzt geändert: 24.6.2011 11:01:28 von mineza
  5. Du setzt eine Variable die dann z.B.
    $stay_logged
    heißt.

    Dann schreibst du

    if ($stay_logged)
    {
    <<Code für Login mit Cookie setzen>>
    }
    else
    <<Code für Login ohne Cookie setzen>>



    Ich würde auch vorher prüfen, ob der Button auch gedrückt wurde ... auch mit ner if-Fkt ... also ganz vorne

    if ($button)
    {
    if ($stay_logged)
    {
    <<Code für Login mit Cookie setzen>>
    }
    else
    <<Code für Login ohne Cookie setzen>>
    }
  6. Autor dieses Themas

    m****a

    danke für deine schnelle hilfe , doch wie prüfe ich , ob bei der checkbox ein hacken gesetzt wurde ?
  7. s*************h

    Mit ein bisschen Google geht fast alles. Nachfolgend ein Link welcher dir sicherlich weiterhelfen kann:
    http://www.tutorials.de/php/273860-checkbox-pruefen.html

    Gruß S.Brosch
  8. Autor dieses Themas

    m****a

    danke ich werd versuchen das umzusetzen
  9. na wie auch bei den nomalen inputs.. deine form schickt den wert der checkbox (true/false) an dein php script und dort guckst du dann einfach ob er gesetzt ist oder nicht!? bei selfhtml gibts da nen beispiel zu, google einfach mal nach "checkbox php", das is nur eine if abfrage ;)
  10. Autor dieses Themas

    m****a

    Vielen vielen Dank Leute , jetzt funktionierts so wie ich es mir vorgestellt hatte. :smile: :smile: :prost:
  11. 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!