PHP Script: Passwortbereich

J

jakob

Guest
Vielleicht könnt ihr mir helfen!

Ich will einen Passwortbereich für meine Homepage. Ich habe viele Scripts probiert, aber haben lle nicht wirklich was gebracht.

Folgendes stelle ich mir vor:

PHP / MYSQL
- Anmeldung: Username, Passwort, Email (mit Email an Webmaster zur Aktivierung)
- Login / Logout
- Emailreminder
- Passwort- /Emailveränderung
- Admin-Funktionen

Im Moment benutze ich folgenden Script, der allerdings nur 1 User beinhaltet, keine Anmeldefunktion und keinerlei Emailfunktionen hat!

Da ich ein absoluter Anfänger bin, kann ich leider nichts selbst schreiben!

LOGIN.php
CODE <?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
session_start();

$username = $_POST['username'];
$passwort = $_POST['passwort'];

$hostname = $_SERVER['HTTP_HOST'];
$path = dirname($_SERVER['PHP_SELF']);

// Benutzername und Passwort werden überprüft
if ($username == 'steffpvt' && $passwort == 'bl-se-1807'){
$_SESSION['angemeldet'] = true;

// Weiterleitung zur geschützten Startseite
if ($_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.1') {
if (php_sapi_name() == 'cgi') {
header('Status: 303 See Other');
}
else {
header('HTTP/1.1 303 See Other');
}
}

header('Location: http://'.$hostname.($path == '/' ? '' : $path).'/index.php');
exit;
}
}
?>
<form action="login.php" method="post" style="font-weight: bold">
<span class="bodyText" style="font-family: Arial, Helveticaa, sans-serif; font-size: 12px; font-weight: bold">name</span><span style="font-family: Arial, Helveticaa, sans-serif; font-size: 12px">:</span><br>
<input type="text" name="username" style="border: 1px solid black;
background-color: white; color: black;">
<br>
<span class="bodyText" style="font-size: 12px; font-weight: bold">Passwort:</span><br>
<input type="password" name="passwort" style="border: 1px solid black;
background-color: white; color: black;">
<br>
<br />
<input name="submit" type="submit" style="border: 1px solid black;
background-color: #ECF0F4; color: black;">
</form>



INDEX.php

CODE <?php include('auth.php'); ?>

<?php
include('abmeldung_ue.php');
?>
<td class="pageName"><p><strong>Herzlichen Glückwunsch! </strong></p></td>
Sie sind nun angemeldet.
Unten links können Sie sich wieder abmelden

</table>
</body>
</html>


AUTH.php

CODE <?php
session_start();

$hostname = $_SERVER['HTTP_HOST'];
$path = dirname($_SERVER['PHP_SELF']);

if (!isset($_SESSION['angemeldet']) || !$_SESSION['angemeldet']) {
header('Location: http://'.$hostname.($path == '/' ? '' : $path).'/login.php');
exit;
}
?>


LOGOUT.php

CODE <style type="text/css">
<!--
.Stil1 {
font-size: 16px;
font-weight: bold;
}
.Stil2 {font-size: 16px}
-->
</style>
<DIV id=rechteNavi style="position: absolute; left: 3px; top: 392px; width: 186px; height: 52px;">
<div align="center"><a href="logout.php" class="Stil1"><br />
</a><span class="Stil2">> </span><a href="logout.php" class="Stil1">Abmelden</a></div>
</DIV>


 
verstehe ich das richtig, dass ein neu registrierter benutzer nicht in die datenbank automatisch sonder manuell eingegeben werden muss durch editieren im MYSQL bereich?

wie kann man dann die "passwort vergessen" funktion einbauen
 
erste frage verstehe ich nicht....

zur 2ten frage
wenn der user seine mailadresse eingibt und diese existiert in der datenbank, so erzeugst du eine neue tabelle in mysql namens z.b.
Aktivieren
mit der mailadresse und dem aktivierungscode...
nun sendest du mit mail() eine email mit einem link
z.b.
www.deineseite.com/aktivieren.php?activationcode=2324adsr&mail=seinemail@yahoo.de

sobald er das anklickt darf er dass passwort 2 mal eingeben
und auf speichern klicken....

somit ist das passwort wieder ueber das alte druebergespeichert....
 
Zu Frage 1: Ich will nicht immer die Datenbank öffnen um neue User einzutragen.
User soll sich anmelden. Ich bekomme dann die Email, und entscheide ob ich die Anmeldung mit einem Bestätigungscode genehmige oder nicht.
Wenn ich genehmige, soll der User automatisch in die Datenbank geschrieben werden vom System.

Dann brauch ich halt noch nen Code, mit dem der User bei Vergessen des Passwortes sich eine Email zusenden lassen kann ...
 
Zurück
Oben