Code funktioniert leider nicht?
Hallo!
Mein Code bekommt immer wieder eine Fehlermeldung, oder er funktioniert einfach nicht.
function showPasswordModal(route, userName) {
console.log('showPasswordModal() wurde aufgerufen mit Route:', route);
$('#passwordModal').modal('show');
$('#passwordForm').attr('action', route); // Setze die Aktion des Passwort-Formulars auf die gewählte Route
$('#passwordForm').data('userName', userName);
}
function validatePassword() {
console.log('validatePassword() wurde aufgerufen');
var enteredPassword = document.getElementById('passwordInput').value;
var userName = $('#passwordForm').data('userName');
var form = document.createElement('form');
form.method = 'POST';
form.action = "{{ route('admin.validatePassword', ['userName' => ':userName']) }}".replace(':userName', userName);
var csrfInput = document.createElement('input');
csrfInput.type = 'hidden';
csrfInput.name = '_token';
csrfInput.value = '{{ csrf_token() }}';
form.appendChild(csrfInput);
var passwordInput = document.createElement('input');
passwordInput.type = 'hidden';
passwordInput.name = 'password';
passwordInput.value = enteredPassword;
form.appendChild(passwordInput);
document.body.appendChild(form);
form.submit();
wenn auf den pay-button gedrückt wird, erscheint ein passwortfeld indem ein benutzerdefiniertes Passwort eingegeben werden soll. Diese Passwörter sind in einer Tabelle gespeichert. überprüft wird in diesen zwei methoden doch debuggen funktioniert irgendwie nicht und die variablen sind normalerweise richtig befüllt.? Weiß vllt irgendwer eine Lösung????? Danke im Vorraus.
Und die Fehlermeldung ist…?
Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpExceptionThe POST method is not supported for route validate-password/nadine. Supported methods: GET, HEAD.
Tschuldigung
1 Antwort
Klingt so als hättest du nur eine GET Route in der Config definiert, rufst die Route aber mit POST auf.
Wenn du Laravel benutzt, wovon ich ausgehe anhand des Fehlers, musst du in der Routes/web.php entsprechend eine Route mit Route::post() definieren.
Das ist, wie gesagt, nur GET, kein POST.
Du musst hier eine Route für POST definieren. Route::post() wäre die Methode die du brauchst.
Ohh danke danke danke, jetzt kommt keine Fehlermeldung mehr!!!!
Danke für den Hinweis, das habe ich jedoch schon getan.
Route::get('/validate-password/{userName}', [AdminController::class, 'validatePassword'])->name('admin.validatePassword');