This question already has an answer here:
Okay, really weird... I'm working on a pretty basic registration script, but it returns this:
Notice: Undefined index: username in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 42
Notice: Undefined index: email in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 46
Notice: Undefined index: email in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 50
Notice: Undefined index: emailconfirm in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 50
Notice: Undefined index: passwordp in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 54
Notice: Undefined index: passwordcomfirm in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 54
Notice: Undefined index: username in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 58
Notice: Undefined index: passwordp in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 62
Notice: Undefined index: passwordp in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 66
Notice: Undefined index: username in C:\xampp\htdocs\Zephryte\app\classes\users.class.php on line 70
Which is pretty darn weird, since I named all of the input fields to the corresponding variable:
<input type="text" name="username" size="45" placeholder="Username..." class="input" style="width: 98%;" />
<input type="text" name="email" size="45" placeholder="E-Mailadres..." class="input" style="width: 98%;" />
And so on... Did I miss anything here?
EDIT:
Since asked for all relevant PHP & HTML code:
HTML:
<form action="index.php?p=register" method="post" autocomplete="off">
<table align="center" cellpadding="8" style="width: 100%;">
<tr>
<td style="width: 100%;">
<input type="text" name="username" size="45" placeholder="Username..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
<td style="width: 100%;">
<input type="text" name="email" size="45" placeholder="E-Mailadres..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
<td style="width: 100%;">
<input type="text" name="emailconfirm" size="45" placeholder="E-Mailadres bevestigen..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
</tr>
<tr>
<td style="width: 100%;">
<input type="password" name="passwordp" size="45" placeholder="Wachtwoord..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
</tr>
<tr>
<td width="100%">
<input type="password" name="passwordconfirm" size="45" placeholder="Wachtwoord bevestigen..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
<td style="width: 100%;">
<input type="text" name="skype" size="45" placeholder="Skype..." class="input" style="width: 98%;" />
</td>
</tr>
<tr>
</tr>
<td width="30%">
<input type="submit" name="register" value="Registreren" class="button small orange" style="width: 100%;">
</td>
</table>
</form>
PHP:
public function register()
{
$query = $this->db->conn->prepare('INSERT INTO ht_users VALUES "", ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?'); //22
$errors = array();
if (strlen($_POST['username']) < 3)
{
$errors[] = "Je gebruikersnaam is niet geldig";
}
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
$errors[] = "Je emailadres is niet geldig";
}
if ($_POST['email'] !== $_POST['emailconfirm'])
{
$errors[] = 'Je emailadressen zijn niet \'t zelfde!';
}
if ($_POST['passwordp'] !== $_POST['passwordcomfirm'])
{
$errors[] = 'Je wachtwoorden zijn niet \'t zelfde';
}
if (!ctype_graph($_POST['username']))
{
$errors[] = 'Je gebruikersnaam bezit ongeldige tekens!';
}
if (strlen($_POST['passwordp']) < 6)
{
$errors[] = 'Je wachtwoord moet op z\'n minst 6 tekens lang zijn';
}
if (strlen($_POST['passwordp']) > 20)
{
$errors[] = 'Je wachtwoord mag maximaal 20 tekens bevatten!';
}
if ($this->checkUsername($_POST['username']))
{
$errors[] = 'Oeps! Er bestaat al een account op deze Habbonaam!<br>Ben je misschien je <a href="?p=lostpass">wachtwoord vergeten</a>?';
}
if ($this->checkEmail($_POST['email']))
{
$errors[] = 'Oeps! Er bestaat al een account op dit emailadres!<br>Ben je misschien je <a href="?p=lostpass">wachtwoord vergeten</a>?';
}
if (count($errors) > 0)
{
echo 'FUCK';
//return $errors;
exit();
}
$password = md5($_POST['passwordp']);
$data = date('d-M-Y');
$ipAddress = $_SERVER['REMOTE_ADDR'];
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
$ipAddress = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
}
$query->bind_param('ssssssssssssssssssssss', $data, $username, $password, NULL, $email, $this->generateCode($username), $ipAddress, $ipAddress, $data, $data, 1, NULL, NULL, 0, 0, 1, 1, 0, $skype, 0, 0, NULL);
$query->execute();
$query->close();
$this->login($username, $passwordp);
}
</div>