Antworten auf deine Fragen:
Neues Thema erstellen

Jquery Ajax Response liefert immer Forbidden

BlackHawk3

Aktives Mitglied

Hallooo,

Ich habe gerade ein Testlogin gebaut.Es geht nur um die AJAX funktionsweise. Das das alles unsicher ist wie eh und je ist mir klar. =)

login.php
Code:
<div id="loginbox">
        <a href="javascript:void(0);" id="login_button">Einloggen</a>
        <div id="formbox" style="display:none;">
         <form>
         	<label>Benutzername</label>
            <input type="text" name="benutzer" id="benutzer">
            <div class="fullgap"></div>
            <label>Passwort</label>
            <input type="password" name="passwort" id="passwort">
            <div class="fullgap"></div>
            <input type="button" value="Login" id="login" name="login">
         </form>
         <div id="meldung"></div>
        </div>
</div>
Javascript-Part

Code:
//LOGIN-REQUEST
	$("form input:button").click(function() {
    $.ajax({
      type: "POST",
      url: 'make_login.php',
      data: $('form').serialize(),
      dataType: 'json',
      success: function(data) {
        $('#formbox').fadeOut('fast', function() {
          $('#loginbox').html('Welcome ' + data.name).fadeIn('fast', function() {
            //$('body').css({'backgroundColor': '#' + data.background});
          });
        });
      },
	  error: function (xhr, status) {
			  switch (status) {
                 case 403: 
			alert('403');
					break;
				 case 404:
                     alert('File not found');
                     break;
                 case 500:
                     alert('Server error');
                     break;
                 case 0:
                     alert('Request aborted');
                     break;
                 default:
			alert(xhr.statusText)
                     //alert('Unknown error ' + status);
             } 
         },
      statusCode: {
        403: function(e) {
          $("#nachricht").html(e.responseText);
        }
      }
    });
    return false;
  });

und die make_login.php

Code:
function cleanPost($val) {
  if(!isset($_POST[$val])) {
    $_POST[$val] = NULL;
    return;
  }
  $_POST[$val] = trim(htmlentities($_POST[$val], ENT_QUOTES, 'UTF-8'));
}

function validateUser($u, $p) {
  return $u == 'demo' && $p = 'demo';
}
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
  cleanPost('user');
  cleanPost('pass');

  if(validateUser($_POST['user'], $_POST['pass'])) {
    $userPrefs = array(
      'name' => 'John Doe',
      'background' => 'FFE78D'
    );
    echo json_encode($userPrefs);
  }
  else {
    header('HTTP/1.1 403 Forbidden');
    echo 'Invalid login information provided';
  }
}
else {
  header('HTTP/1.1 404 Not Found');
  echo '404 page not found!'; // well you will have to make it prettier!
}

Weiß jemand wieso immer der Default-Error mir angezeigt wird? Sowohl auf XAMPP als auch auf einen Webserver. Habe es auch schon mit absoluten Pfaden etc. probiert um ein Cross-Domain-Problem auszuschließen.
CHMOD ist natürlich auch so, dass man auf die Datei zugreifen darf.

Ich würde mich freuen wenn mir jemand sagen kann was hier schief läuft.

Liebe Grüße
 

Duddle

Posting-Frequenz: 14µHz

AW: Jquery Ajax Response liefert immer Forbidden

Du hast die make_login.php wohl von irgendwoher genommen und nicht ausreichend angepasst.
In deinem Formular sind die Namen der <input>s "benutzer" und "passwort", aber an validateUser() übergibst du "user" und "pass" des $_POST-Arrays, welche es in deinem Formular nicht gibt.


Duddle
 

BlackHawk3

Aktives Mitglied

AW: Jquery Ajax Response liefert immer Forbidden

Oh mein Gott!!! Ich zerbrech mir stundenlang den Kopf und dann son Fehler. Ich werde das in Kürze testen. Ich sag dann nochmal bescheid.
Mein unendlichen Dank haste schonmal.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.455
Mitglieder
67.558
Neuestes Mitglied
StarsMan
Oben