session login

hiphap13

Grünschnabel
Servus,
ich habe eine Aufgabe die ich zu erledigen habe aber die Webseite liefert mir kein richtiges Ergebnis. Ich wäre für jede Hilfe dankbar...

hier die Aufgabenstellung:

1) In der Methode besucher() in der Klasse Index zeigen Sie für angemeldete Besucher den Text „Mitgliederbereich. Sie sind angemeldet.“ an. Dazu überprüfen Sie, ob das Feld login für eine Sitzung gesetzt ist und ob das Feld den Wert true hat.

2) In der Methode besucher() in der Klasse Index zeigen Sie für registrierte, aber nicht angemeldete Besucher den Text „Sie können sich jetzt zum Mitgliederbereich anmelden.“ an. Diese Situation liegt dann vor, wenn ein Besucher sich in einer Sitzung registriert, aber noch nicht angemeldet hat. Dann ist das Feld login in der Sitzung vorhanden, aber auf den Wert false gesetzt. Überprüfen Sie also, ob das Feld login für eine Sitzung gesetzt ist und ob es den Wert false hat.



Code:
<?php
setcookie("Image2Food", time(), time()+(60*60*24*120));

if (0>version_compare(PHP_VERSION, '5')){
    die('<h1> Für die Anwedung ' .'ist mindestens PHP 5 notwendig</h1>');
}
?>

<!DOCTYPE html>
<html lang="de">
    
<head>
  <meta charset="utf-8">
    <title>
    Image2Food - Sag mir was ich daraus kochen kann - Index
    </title>

 <meta name="viewport" content=" width=device-width; initial-scale=1.0">
</head>

<body>
    
    <div id="nav">
        <?php
        if (isset($_SESSION["login"]) && ($_SESSION["login"])=="true"){
            require("navmitglieder.php");
        } else {
        require("nav.php");   
        }
    ?>
    </div>
    
    <div id="content">
        <h1>
        Image2Food - Sag mir was ich daraus kochen kann
        </h1>
        <h2>
        Das Soziale, multimediale Netzwerk für Kochideen
        </h2>
        
    <?php
        class Index {
            function besucher(){
              
                
             if (isset($_SESSION["name"]) && ($_SESSION["login"])==true) {
                 echo"<div id='indextest'>" ."<h4>". "Mitgliederbereich"."</h4>". "</br>". "Sie sind angemeldet.</div>";
                
             }
                elseif (isset($_SESSION["login"]) && ($_SESSION["login"])==false) {
                    echo "Sie können sich jetzt zum Mitgliederbereich anmelden.";
                    
                }
                elseif (isset($_COOKIE["Image2Food"])) {
                    echo "Schön, Sie wiederzusehen. Melden Sie sich an, um in den geschlossenen Mitgliederbereich zu gelangen, wenn Sie sich schon registriert haben.";
                }
                else {
                    echo"<div id='indextest'>Willkommen auf unserer Website. Schauen Sie sich um. Sie können sich hier registrieren und dann in einem geschlossenen Mitgliederbereich anmelden.</div>";
                }
                
         }
        
        }
        $obj = new Index();
        $obj -> besucher();
        
    ?>
    </div>
</body>


</html>
 

Anhänge

  • Screenshot 2020-04-23 20.44.25.png
    Screenshot 2020-04-23 20.44.25.png
    331,3 KB · Aufrufe: 8
  • Screenshot 2020-04-23 20.45.20.png
    Screenshot 2020-04-23 20.45.20.png
    336,6 KB · Aufrufe: 6
Und deine Frage lautet wie?

Tipp: ohne ein session_start(); hast du keine Session-Variablen

PS: sind das Hausaufgaben? Sollte man nämlich alleine machen ;)
 
es hat sich erledigt. Vielen Dank dass du dir die Mühe gemacht hast um mir eine Antwort zu geben...
Hab tatsächlich den session_start() vergessen was auch ein Problem war
 
Zurück