Ik heb pas geleden een script van een vriend gekregen, maar hij geeft geen melding als ik succesvol.. Zelf kan ik niet achterhalen waarom die dat niet doet. Hieronder staat mijn script
<script>
$("#register-submit").click(function(e) {
e.preventDefault();
var username = $("#register-username").val();
var password = $("#register-password").val();
var passwordRepeat = $("#register-password-repeat").val();
$.post("/_paneel/modules/landing/register.php", { username: username, password: password, password_repeat: passwordRepeat })
.done(function(data) {
if (data == "correct")
{
$("#register-succesfull").html("Je bent geregistreerd! Je kan nu inloggen.");
setTimeout(function() {
document.location.reload(true);
}, 3000);
}
else
{
var container = $("#register-errors");
container.html("");
$(data).each(function(index, value) {
container.append("- " + value + "<br />");
});
}
});
});
</script>
// FORM
<div class="form register" style="display: none;">
<p class="login-box-msg">Maak een account om in te loggen!</p>
<p style="color: red; text-align: center; margin-top: -5px;" id="register-errors"></p>
<p style="color: green; text-align: center; margin-top: -5px;" id="register-succesfull"></p>
<form>
<div class="form-group has-feedback">
<input type="text" id="register-username" class="form-control" placeholder="Gebruikersnaam" autofocus>
<span class="glyphicon glyphicon-user form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<input type="password" id="register-password" class="form-control" placeholder="Wachtwoord">
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<input type="password" id="register-password-repeat" class="form-control" placeholder="Wachtwoord herhalen">
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="row">
<div class="col-xs-8">
</div>
<div class="col-xs-4">
<button style="padding-left: 5px;" id="register-submit" type="submit" class="btn btn-primary btn-block btn-flat">Registreren</button>
</div>
</div>
</form>
</div>
// REGISTER.php \\
<?php
session_start();
require_once($_SERVER["DOCUMENT_ROOT"] . "/_paneel/classes/landing.class.php");
$landing = new Landing();
$response = $landing->register($_POST["username"], $_POST["password"], $_POST["password_repeat"]);
if ($response === true)
{
echo "correct";
}
else
{
header('Content-Type: application/json');
echo json_encode($response);
}
?>
// landing.class.php \\
<?php
require_once($_SERVER["DOCUMENT_ROOT"] . "/_paneel/classes/object.class.php");
require_once($_SERVER["DOCUMENT_ROOT"] . "/_paneel/classes/user.class.php");
require_once($_SERVER["DOCUMENT_ROOT"] . "/lib/classes/password.class.php");
class Landing extends Object
{
private $_user;
private $_password;
public function __construct()
{
parent::__construct();
$this->_user = new User();
$this->_password = new Password();
}
public function register($username, $password, $passwordRepeat)
{
$errors = array();
if (empty($username))
{
$errors[] = "U heeft geen gebruikersnaam ingevuld.";
}
if ($this->_user->userExists($username) === true)
{
$errors[] = "Deze gebruiker is al geregistreerd.";
}
if (strpos($username, "#") !== false)
{
$errors[] = "Deze naam bevat verboden karakters.";
}
$passwordCheck = $this->_password->validatePassword($password, $passwordRepeat);
if ($passwordCheck !== true)
{
$errors = array_merge($errors, $passwordCheck);
}
if (count($errors) == 0)
{
$hashedPassword = $this->_password->hashPassword($password);
$this->_user->createUser($username, $hashedPassword);
$newUserId = $this->_user->getUserVar($username, "id");
$this->_user->logAction($newUserId, "", "registered");
return true;
}
return $errors;
}
if (count($errors) == 0)
{
$hashedPassword = $this->_password->hashPassword($password);
$userId = $this->_user->getUserVar($username, "id");
$this->_user->setUserVar("wachtwoord", $hashedPassword, $username);
$this->_user->setUserVar("allow_pw_change", 0, $username);
$this->_user->logAction($userId, "", "user-pass-reset-success");
return true;
}
$this->_user->logAction(0, "", "user-pass-reset-wrong", $username);
return $errors;
}
}
?>
Ik weet niet zeker waar ik dit topic moet plaatsen, want ik weet niet of het probleem bij het js script ligt, of bij php..