Hallo. Ich habe ein Passwortscript, mit dem ich meine Seiten nur bestimmten Usern zur Verfügung stelle. Alles funktioniert astrein. Meine Datenbank hat die Felder: user, password1, password2 und email. Nun habe ich die Datenbank um Adressfelder erweitert (name, vorname, strasse und ort). Das Script habe ich entsprechend angepasst. Die Anmeldedaten (user, password1, password2 und email) werden auch in die Datenbank geschrieben, nur die neuen Daten für die Felder (name, vorname, strasse und ort) nicht. Was ist an dem script nicht in Ordnung? Wer hat eine Antwort? Für jede Hilfe bin ich dankbar. Rolf_M
Das Script sieht im Anmeldebereich folgendermaßen aus:
<?php
if($fertig) {
$abfrage1 = mysql_query("SELECT user FROM login");
while ($row = mysql_fetch_object ($abfrage1)) {
if ($row->user==$user) {
echo "Dieser Benutzer existiert schon!";
exit;
}
}
if ($user=="" OR $password1=="" OR $password2=="" or $email=="") {
echo "Sie haben mindestens ein Feld mit Sternchen nicht ausgefüllt!";
}
else if ($password1!=$password2) {
echo "Ihr Passwort ist ungleich Ihrer Wiederholung!";
}
else {
$anfuegen=mysql_query("INSERT INTO login (user, password, email, name, vorname, strasse, ort)
VALUES ('$user','$password1', '$email', '$name', '$vorname', '$strasse', '$ort')");
echo "<b><p align=center>Erfolgreich angemeldet! Sie können sich nun einloggen:</p></b><br>";
@login();
}
}
else {
?>
<table border=0 align=center width="100%">
<tr>
<td valign=top height=50>
<p align=center><img src="logo.gif" height=62 width=658></p>
</td>
</tr>
</table>
<?php
echo "<h2><p align=center>Anmelden</p></h2>";
echo "<form method=\"POST\" action=\"$PHP_SELF?anmelden=yes&fertig=yes\">";
?>
<table cellspacing="1" cellpadding="2" border="0" align=center>
<tr>
<td><font size="2">*Benutzername:</font></td>
<td><font size="2"><input type="text" name="user" value=""> </font></td>
</tr>
<tr>
<td><font size="2">*Passwort:</font></td>
<td><font size="2"><input type="password" name="password1" value=""></font></td>
</tr>
<tr>
<td><font size="2">*Wiederholen:</font></td>
<td><font size="2"><input type="password" name="password2" value=""></font></td>
</tr>
<tr>
<td><font size="2">*E-Mail:</font></td>
<td><font size="2"><input type="text" name="email" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Name:</font></td>
<td><font size="2"><input type="text" name="name" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Vorname:</font></td>
<td><font size="2"><input type="text" name="vorname" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Strasse:</font></td>
<td><font size="2"><input type="text" name="strasse" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Wohnort:</font></td>
<td><font size="2"><input type="text" name="ort" value=""> </font></td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit value=Anmelden></td>
</tr>
</table>
</table>
</form>
</td>
</tr>
</table>
Das Script sieht im Anmeldebereich folgendermaßen aus:
<?php
if($fertig) {
$abfrage1 = mysql_query("SELECT user FROM login");
while ($row = mysql_fetch_object ($abfrage1)) {
if ($row->user==$user) {
echo "Dieser Benutzer existiert schon!";
exit;
}
}
if ($user=="" OR $password1=="" OR $password2=="" or $email=="") {
echo "Sie haben mindestens ein Feld mit Sternchen nicht ausgefüllt!";
}
else if ($password1!=$password2) {
echo "Ihr Passwort ist ungleich Ihrer Wiederholung!";
}
else {
$anfuegen=mysql_query("INSERT INTO login (user, password, email, name, vorname, strasse, ort)
VALUES ('$user','$password1', '$email', '$name', '$vorname', '$strasse', '$ort')");
echo "<b><p align=center>Erfolgreich angemeldet! Sie können sich nun einloggen:</p></b><br>";
@login();
}
}
else {
?>
<table border=0 align=center width="100%">
<tr>
<td valign=top height=50>
<p align=center><img src="logo.gif" height=62 width=658></p>
</td>
</tr>
</table>
<?php
echo "<h2><p align=center>Anmelden</p></h2>";
echo "<form method=\"POST\" action=\"$PHP_SELF?anmelden=yes&fertig=yes\">";
?>
<table cellspacing="1" cellpadding="2" border="0" align=center>
<tr>
<td><font size="2">*Benutzername:</font></td>
<td><font size="2"><input type="text" name="user" value=""> </font></td>
</tr>
<tr>
<td><font size="2">*Passwort:</font></td>
<td><font size="2"><input type="password" name="password1" value=""></font></td>
</tr>
<tr>
<td><font size="2">*Wiederholen:</font></td>
<td><font size="2"><input type="password" name="password2" value=""></font></td>
</tr>
<tr>
<td><font size="2">*E-Mail:</font></td>
<td><font size="2"><input type="text" name="email" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Name:</font></td>
<td><font size="2"><input type="text" name="name" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Vorname:</font></td>
<td><font size="2"><input type="text" name="vorname" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Strasse:</font></td>
<td><font size="2"><input type="text" name="strasse" value=""> </font></td>
</tr>
<tr>
<td><font size="2">Wohnort:</font></td>
<td><font size="2"><input type="text" name="ort" value=""> </font></td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit value=Anmelden></td>
</tr>
</table>
</table>
</form>
</td>
</tr>
</table>
Kommentar