$('#loginForm').on('submit', function (e) {
e.preventDefault();
const username = $('#username').val();
const password = $('#password').val();
$.ajax({
url: '/login',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({ username, password }),
success: function (result) {
if (result.success) {
localStorage.setItem('token', result.token);
// detect admin from explicit server flag or token payload
let isAdmin = false;
if (result.isAdmin) isAdmin = true;
if (result.token) {
try {
const payload = JSON.parse(atob(result.token.split('.')[1]));
if (payload.role === 'admin' || payload.isAdmin) isAdmin = true;
} catch (e) {}
}
if (isAdmin) {
// redirect to admin page
window.location.href = '/admin';
return;
}
// normal user page
updateUI(true);
showStatus('Logged in successfully!');
loadQuota();
} else {
showError(result.message || 'Invalid Credentials');
}
}, error: function (xhr, status, error) {
console.log('Login error:', { xhr, status, error }); // Debug
const msg = xhr.responseJSON?.message || 'Login failed: ' + error || 'Unknown error';
$('#error').text(msg).addClass('visible');
$('#status').text('').removeClass('visible');
setTimeout(function () {
$('#error').fadeOut(500, function () {
$(this).removeClass('visible').css('display', 'none');
});
}, 3000);
}
});
});
Hier ist der Codeausschnitt, in dem ich mich frage, warum die Weiterleitung bei der Administratoranmeldung nicht funktioniert, um direkt zum Administrator-Dashboard zu gelangen. Der Ablauf ermöglicht es dem Benutzer, zur normalen Benutzerseite zu wechseln, aber der Administrator sollte umgeleitet werden, um direkt zur Admin-Seite und nicht zur normalen Benutzerseite zu gelangen. Es erfolgt keine Umleitung zur Admin-Seite, wenn Sie mit den Admin-Anmeldeinformationen angemeldet sind.
// detect admin from explicit server flag or token payload let isAdmin = false; if (result.isAdmin) isAdmin = true; if (result.token) { try { const payload = JSON.parse(atob(result.token.split('.')[1])); if (payload.role === 'admin' || payload.isAdmin) isAdmin = true; } catch (e) {} }
if (isAdmin) { // redirect to admin page window.location.href = '/admin'; return; }
// normal user page updateUI(true); showStatus('Logged in successfully!'); loadQuota(); } else { showError(result.message || 'Invalid Credentials'); } }, error: function (xhr, status, error) { console.log('Login error:', { xhr, status, error }); // Debug const msg = xhr.responseJSON?.message || 'Login failed: ' + error || 'Unknown error'; $('#error').text(msg).addClass('visible'); $('#status').text('').removeClass('visible'); setTimeout(function () { $('#error').fadeOut(500, function () { $(this).removeClass('visible').css('display', 'none'); }); }, 3000); } }); }); [/code] Hier ist der Codeausschnitt, in dem ich mich frage, warum die Weiterleitung bei der Administratoranmeldung nicht funktioniert, um direkt zum Administrator-Dashboard zu gelangen. Der Ablauf ermöglicht es dem Benutzer, zur normalen Benutzerseite zu wechseln, aber der Administrator sollte umgeleitet werden, um direkt zur Admin-Seite und nicht zur normalen Benutzerseite zu gelangen. Es erfolgt keine Umleitung zur Admin-Seite, wenn Sie mit den Admin-Anmeldeinformationen angemeldet sind.
Ich habe eine Moodle-Anwendung Version 4.0.2 über den Apache-Webserver und verwende PHP v8.0. Nachdem Sie sich als Administrator angemeldet oder eine Änderung im Administrationsbereich vorgenommen...
Entschuldigung, ich bin es wieder. Ich habe versucht, PHP zu verwenden, um den Benutzer nach dem Absenden eines Formulars zu home.html umzuleiten, aber anstatt weitergeleitet zu werden, erhalte ich...
Nach einer Neugestaltung der Website müssen einige Seiten umgeleitet werden. Alles bleibt auf der gleichen Domain, nur ein paar Dinge wurden neu organisiert und/oder umbenannt. Sie haben die Form:...