Ich habe eine Methode in users_controller.php meines CakePHP-Projekts, das verwendet wird, um einen Benutzer über einen AJAX-Aufruf auf einer WordPress-Site remote einzuloggen. Die Methode funktioniert einwandfrei, wenn sie über Firefox aufgerufen wird, aber wenn ich versuche, sie über AJAX oder direkt vom Browser in IE8 oder Safari aufzurufen, meldet sie sich einfach nicht an. Die Auth-> login() -Methode gibt true zurück, als wäre alles gut, aber es meldet sich nicht an. Irgendwelche Ideen?CakePHP Auth Komponente "Login" Methode Fehler in IE8 + Safari
function remoteLogin($key)
{
# this method should only be called via AJAX
$this->layout = 'ajax';
$matching_key = '***';
if($key == $matching_key)
{
# auto-login service account
$data['User']['username'] = '***';
$data['User']['password'] = $this->Auth->password('***');
$this->Auth->login($data);
}
}
Hinweis: Ich habe nun bestätigt, dass dieses Verfahren auch nicht in Opera funktioniert. Ich bin legitim verwirrt.
Was Genauer gesagt, ist Firefox das IE, usw. nicht? Wird die Benutzeroberfläche nach Abschluss dieser Funktion aktualisiert? Es hört sich auch so an, als wäre es ein Problem mit dem Javascript, das Sie verwenden, um diese Funktion aufzurufen, und nicht die Funktion selbst (nur weil PHP ziemlich gut aussieht). Mehr Detail bitte, sowie das relevante Javascript würde dieses einfacher zu diagnostizieren machen. – inkedmn