47 lines
2.1 KiB
HTML
47 lines
2.1 KiB
HTML
<h2>Request Account</h2>
|
|
<div class="error"></div>
|
|
<div class="success"></div>
|
|
<form id="register-request-form">
|
|
Vorname: <input type="text" name="vorname" required><br><br>
|
|
Nachname: <input type="text" name="nachname" required><br><br>
|
|
Username: <input type="text" name="username" required><br><br>
|
|
<input type="submit" value="Request Account">
|
|
</form>
|
|
<script>
|
|
document.getElementById('register-request-form').addEventListener('submit', function(event) {
|
|
event.preventDefault();
|
|
const formData = new FormData(this);
|
|
fetch('../php/register_request.php', {
|
|
method: 'POST',
|
|
body: formData
|
|
})
|
|
.then(response => response.json())
|
|
.then(data => {
|
|
const errorDiv = document.querySelector('#register-request-form + .error');
|
|
const successDiv = document.querySelector('#register-request-form + .error + .success');
|
|
if (data.success) {
|
|
if (successDiv) {
|
|
successDiv.textContent = data.message;
|
|
} else {
|
|
document.querySelector('#register-request-form').insertAdjacentHTML('afterend', '<p class="success">' + data.message + '</p>');
|
|
}
|
|
document.getElementById('register-request-form').reset();
|
|
} else {
|
|
if (errorDiv) {
|
|
errorDiv.textContent = data.error;
|
|
} else {
|
|
document.querySelector('#register-request-form').insertAdjacentHTML('afterend', '<p class="error">' + data.error + '</p>');
|
|
}
|
|
}
|
|
})
|
|
.catch(error => {
|
|
console.error('Error requesting registration:', error);
|
|
const errorDiv = document.querySelector('#register-request-form + .error');
|
|
if (errorDiv) {
|
|
errorDiv.textContent = 'Failed to request account due to network error.';
|
|
} else {
|
|
document.querySelector('#register-request-form').insertAdjacentHTML('afterend', '<p class="error">Failed to request account due to network error.</p>');
|
|
}
|
|
});
|
|
});
|
|
</script> |