• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Login-Bereich

xark

Neues Mitglied
Hallo zusammen!

Ich habe vor ein Login-Bereich zu erstellen, habe leider nicht besonders viel Ahnung von PHP.

Ich poste euch mal was ich bis jetzt gemacht habe...

Die MySQL-Datenbank habe ich wie folgt aufgebaut:

CREATE TABLE Benutzerdaten (
ID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
Vorname VARCHAR(30) NOT NULL,
Nachname VARCHAR(30) NOT NULL,
Spielname VARCHAR(30) NOT NULL UNIQUE,
Email VARCHAR(100) NOT NULL UNIQUE,
Geschlecht VARCHAR(10) NOT NULL,
Bundesland VARCHAR(30) NOT NULL,
Geburtsdatum DATETIME NOT NULL,
Lieblingsverein VARCHAR(20),
Password CHAR(32) NOT NULL
);

Der bedeutende Code für den Anmeldebildschirm(Login-Seite.php) sieht wie folgt aus:
<?php
if (isset ($_REQUEST["fehler"]))
{
echo "Die Zugangsdaten waren ungültig.";
}
?>

<form action="login.php" method="post">
<TABLE cellspacing="3" cellpadding="5" border="1" align="center">
<tr>
<th colspan="2"><H2>Bitte loggen sie sich zum spielen ein!</h2></th>
</tr>
<TR>
<TD><h2>Name:</h2></td>
<TD><input type="text" name="User"><br></td>
</tr>
<TR>
<TD><h2>Passwort:</h2></td>
<TD><input type="password" name="PW"><br></td>
</tr>
<tr>
<th colspan="2"> <form action="Startseite.html" method="link"> <input type="submit" value="Login!"></form></th>
</tr>
<tr>
<th colspan="2"><H2 align="center">Zum ersten mal hier? <br> Hier k&ouml;nnen sie sich <a href="Anmeldebildschirm.html">anmelden</A>!</h2></th>
</tr>
</table>
</form>

DIe Login.php sieht dann so aus:
<?php
// Session starten
session_start ();

// Datenbankverbindung aufbauen
$connectionid = mysql_connect ("localhost", "root", "");
if (!mysql_select_db ("LoginSystem", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}

$sql = "SELECT ".
"Id, Spielname, Nachname, Vorname, Lieblingsverein ".
"FROM ".
"Benutzerdaten ".
"WHERE ".
"(Spielname like '".$_REQUEST["User"]."') AND ".
"(Kennwort = '".md5 ($_REQUEST["PW"])."')";
$result = mysql_query ($sql);

if (mysql_num_rows ($result) > 0)
{
// Benutzerdaten in ein Array auslesen.
$data = mysql_fetch_array ($result);

// Sessionvariablen erstellen und registrieren
$_SESSION["user_Id"] = $data["Id"];
$_SESSION["user_Spielname"] = $data["Nickname"];
$_SESSION["user_Nachname"] = $data["Nachname"];
$_SESSION["user_Vorname"] = $data["Vorname"];
$_SESSION["user_Lieblingsverein"] = $data["Lieblingsverein"];

header ("Location: Startseite.php");
}
else
{
header ("Location: Login-Seite.php?fehler=1");
}
?>

Nun habe ich noch eine Registrierungsseite, die ich wie folgt aufgebaut habe:

<h2 text align="center">Bitte geben sie Ihre Daten ein!</h2>
<TABLE cellspacing="3" cellpadding="5" border="1" align="center">
<TR>
<TD><h2>Vorname:</h2></td>
<TD><input type="text" name="User"><br></td>
</tr>
<TR>
<TD><h2>Nachname:</h2></td>
<TD><input type="text" name="PW"><br></td>
</tr>
<TR>
<TD><h2>Spielname:</h2></td>
<TD><input type="text" name="PW"><br></td>
</tr>
<TR>
<TD><h2>E-Mail:</h2></td>
<TD><input type="text" name="PW"><br></td>
</tr>
<TR>
<TD><h2>Geschlecht:</h2></td>
<TD>
<form name="Geschlecht">
<input name="checkbox1" type="checkbox" value="maennlich"><h2>Männlich</h2>
<input name="checkbox1" type="checkbox" value="weiblich"><h2>Weiblich</h2>
</form>
</td>
</tr>
<TR>
<TD><h2>Bundesland:</h2></td>

<td>
<form name="Bundesland">
<select name="selOpt" >
<option value="1"> Baden-Württemberg
<option value="2"> Bayern
usw...
</select>
</td>
</tr>

<TR>
<TD><h2>Geburtsdatum:</h2></td>
<td>
<form name="Alter">
<select name="selOpt" >
<option value="1"> 1
<option value="2"> 2
usw.
</select>
<form name="Alter2">
<select name="selOpt" >
<option value="1"> Januar
<option value="2"> Februar
<option value="3"> März
<option value="4"> April
<option value="5"> Mai
<option value="6"> Juni
<option value="7"> Juli
<option value="8"> August
<option value="9"> September
<option value="10"> Oktober
<option value="11"> November
<option value="12"> Dezember
</select>
<form name="Alter3">
<select name="selOpt" >
<option value="1"> 1960
<option value="2"> 1961
usw...
</select>
</td>
</tr>
<TR>

<TD><h2>Lieblingsverein:</h2></td>
<td>
<form name="Verein">
<select name="selOpt" >
<option value="1"> Werder Bremen
<option value="2"> Borussia Dortmund
.
.
.
</select>
</td>
</tr>
<TR>
<TD><h2>Passwort:</h2></td>
<TD><input type="password" name="PW"><br></td>
</tr>
<TR>
<TD><h2>Passwort wiederholen:</h2></td>
<TD><input type="password" name="PW"><br></td>
</tr>
<tr>
<th colspan="2"> <form action="Login-Seite.html" method="link"> <input type="submit" value="Registrieren!"></form><form action="Login-Seite.html" method="link"> <input type="submit" value="Abbruch!"></form></th>
</tr>
</table>

Theoretisch bräuchte ich doch nur noch die Verbindung von der Registrierungsseite zu der Datenbank oder fehlt mir da noch etwas anderes?

Ob der ganze Rest funktioniert konnte ich auch noch nicht ausprobieren, also weis ich auch nicht ob der Rest stimmt.

Kann mir dabei jemand helfen? Wie mache ich diese Verbindung? Ist der Rest richtig? Was fehlt mir um den Bereich fertig zu stellen?

Schon einmal vielen vielen Dank für eure Mühe!
 
Bevor Du mit php weitermachst, solltest Du den HTML-Code aufräumen. Falsch angebracht sind die vielen <form>-Tags. Du brauchst für ein Formular nur 1 <form>-Tag und nicht um irgendwelche Elemente weitere <form>-Tags. So kommt es derzeit z.B. dazu, dass das Formular nicht an login.php geschickt wird sondern an Startseite.html, wenn man den Button anklickt. Das ist schlicht falsch.
 
Ok, danke.
Das habe ich jetzt geändert.

Kann mir auch noch jemand bei meinen restlichen Fragen helfen?
 
Wenn Du das korrekt geändert hast, sollte sich auch am Verhalten etwas geändert haben. Kommt denn jetzt eine Ausgabe vom PHP? Wird die php-Datei überhaupt aufgerufen, wenn Du das Formular abschickst?
 
Ja, die Datei wird aufgerufen, nur anmelden kann ich mich ja noch nicht.
Ich habe ja Probleme mit dem Verbinden von der Registrierungsseite zu der Datenbank.

Ich bekomme keine User in die Datenbank.
 
Ich sehe bei dem was Du bisher gezeigt hast kein Registrierungsformular und keine Verarbeitung davon.

Kommen Fehlermeldungen? Wie sieht dein aktueller HTML- und PHP-Code aus?
 
Zurück
Oben