Hallo und herzlich willkommen bei Welt der PHP Wunder!
Also was du da vorhast, ist schon relativ umfangreich und geht sogar sehr weit in die Grundlagen hinein. Standardmäßig sollte jemand jetzt sagen "schau dir erstmal die Basics à la 'hello world' an". Aber in Ordnung.
Du brauchst dazu mehrere Teile:
Hier brauchst du ein HTML Formular, wo man das Passwort (im Normalfall auch noch einen Username, aber okay) einträgt:
Login Formular
Code:
<form action="auswertungsSeite.php" method="POST">
<input type="password" name="passwort"/>
<input type="submit" value="Einloggen" />
</form>
Im action Bereich wird "auswertungsSeite.php" angegeben. Das ist eine beliebige Seite, die beim Betätigen des submit Buttons aufgerufen wird.
Der Clue (und der erste PHP Teil) kommt jetzt:
Auswertung
PHP-Code:
<?php
session_start(); # starte die Session des Users
if(!$_GET['passwort'] OR $_GET['passwort'] == ""){ # Benutzer hat das Feld leergelassen
header('Location: www.meineStartseite.de'); # zurück zum Index
exit;
}
$passwort = $_GET['passwort']; # beachte: der Key von $_GET ist der Name des Passwort fields aus dem Formular
if($passwort == "mein Passwort"){ # Passwort ist eingefüllt und stimmt mit deinem hart codiertem Passwort überein
$_SESSION['loggedin'] = true; # irgendeine Variable des Session-Arrays wird gesetzt, sodass später klar ist, dass man bereits eingeloggt ist
header('Location: www.meineStartseite.de/adminBereich.php'); # leite zum Adminbereich weiter
exit;
}
else{ # Passwort stimmt nicht. Könnte auch in das obere if verwurstelt werden. Der Übersicht halber getrennt
header('Location: www.meineStartseite.de'); # zurück zum Index
exit;
}
?>
Fein, fein. Wir sind nun also eingeloggt. Nun also der Adminbereich:
Adminbereich
PHP-Code:
<?php
session_start();
if(!$_SESSION['loggedin'] OR $_SESSION['loggedin'] != true){ # der User hat sich zuvor nicht eingeloggt und versucht sich eventuell direkt über die URL Zugang zum Adminbereich zu verschaffen
header('Location: www.meineStartseite.de'); # zurück zum Index
exit;
}
# das Formular zum Einfüllen der Daten. Könnte noch mit Texten versehen werden, damit klar ist, wozu die Felder da sind...
echo "<form action='speichern.php' method='POST'>";
echo "<input type='text' name='naechstesSpiel'/>";
echo "<input type='text' name='anzahlMitglieder'/>";
echo "<input type='submit' value='Speichern' />";
echo "</form>";
?>
Da du bisher nur HTML hast, hast du sicher keine Datenbank. Und ich denke nicht, dass du wegen zwei Werten eine anlegen willst. Also wird das Ganze in einer Textdatei gespeichert. Bete nun, dass du Zugriffsrechte auf deinem Server / Webspace hast bzw setze diese entsprechend auf schreibenden Zugriff, wenn nötig.
Speichern
PHP-Code:
<?php
# hier sollte eventuell nochmal ein Sicherheitscheck wie im Adminbereich kommen
if(!$_GET['naechstesSpiel'] OR !$_GET['anzahlMitglieder'] OR $_GET['naechstesSpiel'] == "" OR $_GET['anzahlMitglieder'] == ""){ # min ein Feld nicht ausgefüllt
header('Location: www.meineStartseite.de/adminBereich.php'); # leite zum Adminbereich weiter
exit;
}
$naechstesSpiel = $_GET['naechstesSpiel']; # weils so schön ist....
$anzahlMitglieder = $_GET['anzahlMitglieder']; # ...die beiden Werte in eigene Variablen speichern
$datei = fopen("meineSpeicherdatei.txt", "w"); # w für write. Siehe auch [url]http://www.schattenbaum.net/php/datei.php[/url]
fwrite($datei,$naechstesSpiel.",".$anzahlMitglieder); # die beiden Werte mit einem Komma getrennt in die Datei schreiben
fclose($datei); # Datei wieder schließen
header('Location: www.meineStartseite.de/adminBereich.php'); # leite zum Adminbereich weiter
exit;
?>
Joa. Schön gespeichert isses. Jetzt musst dus beim Anzeigen nur noch auslesen:
Laden
PHP-Code:
<?php
$datei = fopen("meineSpeicherdatei.txt", "r");
$zeile = fgets($datei); # Inhalt der Datei in eine Variable einlesen
$inhalt = explode(",",$zeile); # Den Inhalt von $zeile am Zeichen "," auftrennen und in das array $inhalt schreiben
[...]
echo "<div align='center'><h3>Nächstes Spiel</h3></div> [img]images/Verein1.jpg[/img]<font size='-1'>VS.</font>[img]images/Verein2.jpg[/img]
<font size='-1'>".$inhalt[0]."</font>"; # mit dem Punkt fügt man Teile zusammen. Wir fügen als die Strings links und rechts vom nächsten Spiel mit dem Datum zusammen. Letzteres steht an der ersten Stelle des Arrays also am Index 0
?>
Wo genau bei dir allerdings steht, wie viele Mitglieder das sein sollen, sehe ich nicht. Die Mitgliederzahl stünde dann aber in $inhalt[1]. Sollen das 57 Mitglieder sein, und die Zahl soll mit kleinen Bildern repräsentiert werden?
Disclaimer: keins der Snippets ist auf syntaktische und/oder semantische Korrektheit getestet. Sie sind auch nicht formschön und vielleicht auch nicht Standardkonform und sollen nur ein Anstoß sein und sollten lieber nicht copy gepastet werden. Der Login ist schon aufgrund des hart codierten Passworts und anderen Gründen unsicher. Wenn es sicher aber nur für eine kleine Vereinsseite handelt, sollte das passen.
Trotzdem solltest du dich in die PHP Grundlagen einarbeiten.
Ich empfehle:
http://de3.php.net/manual/de/
http://www.schattenbaum.net/php/
Hoffe, ich konnte helfen. Viel Erfolg.
Lesezeichen