Hallo,
erstmal ein Lob an den Machern und Mitgliedern dieses Forums
Jetzt zu meinem Anliegen. Ich habe eine Klasse die ich erweitern muss, nur ich komme da nicht weiter. Entweder ich bin zu blöd dafür oder die Aufgabe so unlogsich ist.
Hier ist die Klasse (Es ist nur eine Klasse von mehreren):
Nun diese Klasse muss so erweitert werden:
1. es soll eine Methode integriert werden, die einen benutzer und Passwort entgegennimmt. Falls es "Admin" / "admin" ist, soll die $KndNr = 1 sein, für alle anderen Kombinationen $KndNr = Zeitstempel.
2. Der Konstructor und Destructor der Klasse sollen erweitert werden zum Lesen und Setzen der SESSION['id'], wo die KndNr abgelegt werden soll.
Ich habe es so gelöst.
aso, und der Unix-Zeitstempel soll nur beim ersten Durchlauf gespeichert werden, sonst ändert sich die KndNr bei jedem Aufruf der Seite.
Wie findet ihr die Lösung und sind da irgendwelche Gedankenfehler****
Ich hatte erst eine if-Anfrage gehabt, wo der Admin keine Möglichkeit hätte sich anzumelden.
Es sind noch 2 Fragen zu der Aufgabe die mir von der Reihenfolge her unlogisch scheinen, aber ich wollte erst Etappenweise arbeiten, sonst komme ich ganz durcheinander.
Als Vorschau:
3. Es soll eine Seite erstellt werden mit einem Anmeldeformular, (Wo ich finde: man soll erst eine Anmeldeseite erstellen dann die anmelde Methode, oder sehe ich das falsch). durch diese Seite landet der Admin in einem Bereich und die anderen User wo anders.
4. Da soll der Adminbereich erstellt werden aber da bin ich schon weiter.
erstmal ein Lob an den Machern und Mitgliedern dieses Forums
Jetzt zu meinem Anliegen. Ich habe eine Klasse die ich erweitern muss, nur ich komme da nicht weiter. Entweder ich bin zu blöd dafür oder die Aufgabe so unlogsich ist.
Hier ist die Klasse (Es ist nur eine Klasse von mehreren):
PHP:
<?php
class kunde
{
private $KndNr;
public function __construct()
{
$this->KndNr = time();
}
public function getKundenNummer()
{
return $this->KndNr;
}
}
?>
Nun diese Klasse muss so erweitert werden:
1. es soll eine Methode integriert werden, die einen benutzer und Passwort entgegennimmt. Falls es "Admin" / "admin" ist, soll die $KndNr = 1 sein, für alle anderen Kombinationen $KndNr = Zeitstempel.
2. Der Konstructor und Destructor der Klasse sollen erweitert werden zum Lesen und Setzen der SESSION['id'], wo die KndNr abgelegt werden soll.
Ich habe es so gelöst.
PHP:
<?php
class kunde
{
private $KndNr;
private $benutzer = "Admin";
private $kennwort = "Halo";
public function __construct() // Der Konstructor
{
if (!isset ($_SESSION['id'])) // Es wird erst geprüft ob eine Session existiert
{
$_SESSION['id'] = $this->KndNr; // Falls nicht wird darin der Unix-ZeitStempel abgelegt
}
else
$_SESSION['id'] = $_SESSION['id']; //Falls eine existiert wird sie weiter benutzt
}
public function anmelden() // Die Methode anmelden
{
if ($this->benutzer == "Admin" && $this->kennwort == "admin")
{
$this->KndNr = 1; // KndNr ist 1 falls die Kombination stimmt.
}
else // hier habe ich meine Zweifell :D
{
if (!isset ($_SESSION['id']))
{
$this->KndNr = time();
}
else
{
$this->KndNr = $_SESSION['id'];
}
}
// $_SESSION['id'] = $this->KndNr;
}
public function __destruct() // im Destructor wird die KndNr in der SESSION abgespeichert
{
$_SESSION['id'] = $this->KndNr;
print $_SESSION['id']; //Kontrollausgabe
}
public function getKundenNummer()
{
return $this->KndNr;
}
}
?>
aso, und der Unix-Zeitstempel soll nur beim ersten Durchlauf gespeichert werden, sonst ändert sich die KndNr bei jedem Aufruf der Seite.
Wie findet ihr die Lösung und sind da irgendwelche Gedankenfehler****
Ich hatte erst eine if-Anfrage gehabt, wo der Admin keine Möglichkeit hätte sich anzumelden.
Es sind noch 2 Fragen zu der Aufgabe die mir von der Reihenfolge her unlogisch scheinen, aber ich wollte erst Etappenweise arbeiten, sonst komme ich ganz durcheinander.
Als Vorschau:
3. Es soll eine Seite erstellt werden mit einem Anmeldeformular, (Wo ich finde: man soll erst eine Anmeldeseite erstellen dann die anmelde Methode, oder sehe ich das falsch). durch diese Seite landet der Admin in einem Bereich und die anderen User wo anders.
4. Da soll der Adminbereich erstellt werden aber da bin ich schon weiter.