if (resulttext.search("Success") >= 0) {
Hier kannst du besser .indexOf("Success") > -1 verwenden. search() ist für reguläre Ausdrücke gedacht.
Danke für den Hinweis, ist geändert.
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); req.setRequestHeader("Content-length", formdaten.length); req.setRequestHeader("Connection", "close");
Diese Zeilen dürften eigentlich unnötig sein. Bei POST-Requests ist application/x-www-form-urlencoded Standard, und der Browser setzt auch die korrekte Content-Length. Die Angabe von Connection: Close ist nicht zwingend nötig, lass den Browser entscheiden, wann er die TCP-Verbindung schließt.
Die Zeilen habe ich auch auskommentiert.
[code lang=html]
$verbindung = @mysql_connect($server,$login,$pass);
$test_pw = md5($password);
$abfrage = "select anzeigename,loginname from userlogins where loginname='$loginname' AND password='$test_pw'";Dieses Script hat verschiedene Schwächen und Sicherheitslücken.
Die übergebenen Daten werden mittels require('/grab_globals.lib.php');
geprüft. Hat bisher allen von mir getesteten typischen SQL-Injektionen widerstanden.
Die sichere Speicherung und Prüfung des Passworts hat im Moment noch keine Priorität.
Das Session-Handling umzustellen dürfte auch kein Akt sein, dient derzeit nicht um sichere Daten zu schützen, sondern lediglich zur Authentifizierung, wer gerade die Seite aufruft. Zudem werden bei jeder Speicherung im Anschluss weitere Daten z.B. IP-Adresse gespeichert.
Die Sicherheit ist aber im Moment nicht das Thema, sondern vielmehr warum die Anmeldung bzw. der Ajax-Aufruf bei allen anderen Browsern nicht funktioniert.