1.) Wieso schließt und öffnest Du ständig PHP?
PHP-Code:
?>
<?php
$ipi = getenv("REMOTE_ADDR");
und
PHP-Code:
?>
<?php
$sql = "INSERT INTO members
Es reicht eigentlich, wenn Du am Anfang des Dokuments <?php schreibst und am Ende mit ?> aufhörst. Wenn Du zwischendrin HTML benutzt, kanns Du dieses entweder per
PHP-Code:
print 'HTML Code';
ausgeben, wie ich es meist mache, oder vor dem HTML-Code ein ?> und danach ein <?php setzen.
2.)
PHP-Code:
getenv("REMOTE_ADDR")
kannst Du mit $_SERVER['REMOTE_ADDR'] tauschen. Ich glaube, getenv nutzt man heutzutage nicht mehr.
3.)
PHP-Code:
elseif(!isset($_POST['username']) || $_POST['username'] == ""){
Normalerweise beginnt man eine if-Anweisung mit if (wenn), nicht mit elseif (ansonsten, wenn).
Das sollte eigentlich auch den Fehler hervorrufen: Unerwartetes elseif, da hier eigentlich if angebracht wäre.
PHP-Code:
if(Bedingung) {
Anweisung
} elseif(Bedingung) {
Anweisung
} else {
Anweisung
}
4.)
Der PHP-Interpreter per CMD meint zwar, es gäbe keine MySQL-Verbindung, aber ansonsten läuft das Script:
PHP-Code:
<?php
$host = "localhost"; //die domain des Forums
$user = "geheim";
$password = "geheim";
$db = mysql_connect($host, $user, $password) or die("Fehler beim Verbinden mit der Datenbank");
$db_selected = mysql_select_db('geheim', $db);
$ipi = getenv("REMOTE_ADDR");
$zeit = date("d.m.Y");
$sql = "INSERT INTO members
(
date,
ip,
username,
password
)
VALUES
(
'" . addslashes($_POST["date"]) . "',
'" . addslashes($_POST["ip"]) . "',
'" . addslashes($_POST["username"]) . "',
'" . addslashes($_POST["password"]) . "'
)
";
mysql_query($sql) OR die(mysql_error());
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Registrieren</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<b>
Wenn nach dem Abschicken die Seite neu geladen wird, ist die Registrierung erfolgt.
<br>
~ihr Protonix Team
</b>
<form name="form1" method="post" action="register.php">
<table width="50%" border="0">
<input type="hidden" name="date" value="<?php echo $zeit ?>" />
<input type="hidden" name="ip" value="<?php echo $ipi ?>" />
<tr>
<td height="29">Username:</td>
<td><input name="username" type="text" id="username" size="30"></td>
</tr>
<tr>
<td height="27">Passwort</td>
<td><input name="password" type="text" id="password" size="30"></td>
</tr>
<tr>
<td width="100%"><input type="submit" value="Registrieren"></td>
</tr>
</table>
</form>
<?php
if(!isset($_POST['username']) || $_POST['username'] == ""){
$inhalt .= '<p align="center">Du hast den Benutzernamen vergessen!<br><br><a href="register.php">Zurück</a></p>';
}elseif(!isset($_POST['password']) || $_POST['password'] == "") {
$inhalt .= '<p align="center">Ein Passwort brauchen wir schon ;-)<br><br><a href="register.php">Zurück</a></p>';
}else{
$query = @mysql_query("SELECT username FROM members".$digit." WHERE user = '".$_POST['username']."'");
$result = @mysql_fetch_array($query);
if($_POST['username'] == $result['user']) {
$inhalt .= '<p align="center">Den Benutzernamen gibt es schon<br><br><a href="register.php">Zurück</a></p>';
die;
}
}
?>
</body>
</html>
Ich hoffe, ich konnte Dir helfen.