Seite 2 von 2
Verfasst: 08.08.2008 18:23
von 4seven
bei uns nicht, da das Forum in einem Frameset geladen wird.
Völlig wurst, da das Script in jedem Falle erstmal nachfragt.
außerdem würde ich gerne auf nummer sicher gehen mit der Meldung und den nichtausloggern sagen, warum sie das falsch gemacht haben.
Du kannst in die Meldung alles reinschreiben, was du möchtest.
Siehe:
Hast du dich korrekt ausgeloggt?
Code: Alles auswählen
<script type="text/javascript">
window.onbeforeunload = function () {
return "Hast du dich korrekt ausgeloggt?"; }; </script>
oder so
Code: Alles auswählen
<script language="JavaScript">
function Abfrage()
{if (confirm("Hast du dich korrekt ausgeloggt?"))
{window.close()
}
}
</script>
Verfasst: 08.08.2008 18:58
von StarWolf3000
Code: Alles auswählen
<body onunload="info()" class="{S_CONTENT_DIRECTION}">
Code: Alles auswählen
<script type="text/javascript">
window.onbeforeunload = function () {
return "Hast du dich korrekt ausgeloggt?"; }; </script>
Empfehle ich grundsätzlich nicht!
Warum?
Event.onUnload() und Event.onBeforeUnload() werden beim Verlassen der Datei und nicht beim Verlassen der Domain ausgeführt, so würde jeder Aufruf innerhalb des Forums zu einem Thema oder einer anderen Foren-Funktion die angegebene Meldung bringen.
Verfasst: 08.08.2008 18:59
von 4seven
teste es

Verfasst: 09.08.2008 17:39
von Kizu
ich habs schon probiert mit meinem Script (über Google gefunden und das läuft über onunload.)
wie kann ich bei ausloggen dem User einen Wert in die Datenbank schreiben und beim Einloggen, prüfen, ob es diesen Wert gibt. wenn es den nicht gibt hat sich der User ja nicht richtig abgemeldet und ich kann die Seite anzeigen lassen.
aber ich weiß nicht, wie ich einen Wert in die datenbank schreibe und erst recht nicht, wie ich diesen dann auch noch dem passenden user reinschreibe. bei dem lesen genauso. bei meinem Buch über PHP und MYSQL komm ich nicht weiter.
Verfasst: 14.08.2008 21:33
von Kizu
kann mir jemand helfen.
Verfasst: 17.08.2008 18:40
von Kizu
Hallo?
Bitte helft mir
Verfasst: 18.08.2008 10:45
von Dunstkreis
Hi.
Also wenn ich bei mir im Board mit der Maus über "Logout" fahre steht da ucp.php?mode=logout&sid=xxx
Also schau ich doch einfach mal in die ucp.php.
Et voila. Es gibt ne switch Anweisung mit den cases login und logout.
Da ist's was du suchst.
Wenn du jetzt keinen großen Anspruch an irgendwelche Code Syntax stellst, und deine Änderungen hier auch nicht veröffentlichen willst, wäre das die Stelle an der ich an deiner Stelle herumhaken würde!
So grob würde ich so vorgehen:
Erstmal Backupen ist klar.
Dann würd ich entweder ne neue Tabelle anlegen, oder ein zusätzliches Datenfeld in der Users einfügen. Da ich aber nicht weiß, wie sich zweiteres verhält würd ich evtl zur neuen Tabelle tendieren. Aber da würd ich mich erst noch erkundigen.
Dann würd ich hingehen und im Login Case dieses Datenfeld auf 1 setzen. Das symbolisiert, dass der User eingeloggt ist.
Und im Logout case würd ich ne SQL Anweisung reinhauen, die dieses Feld dann wieder auf 0 setzt.
Damit haste den "Hintergrund" für deine Funktion schon mal fertig.
Dann kannste als nächstes beim Login als erstes abfragen ob das noch auf 1 steht. Wenn ja, dann zeigste irgendwie so ne Meldung an. Oder du setzt ne css class die einer in dem template liegenden Infobox zugeordnet ist. Oder sonst was.
Damit wärs quasi auch fertig.
Da ich jetzt spontan nicht weiß, wie sich das verhält, wenn man auf auto einloggen gestellt hat, du das aber für deine Zwecke scheinbar eh ausstellen willst, würd ich wenn ich mich nicht länger damit beschäftigen will, und das nur kurz machen will, einfach die checkbox dafür aus dem template rauslöschen.
Jo. das wars würd ich sagen.
Ich übernehme ausdrücklich keine Garantie auf Vollständigkeit oder Richtigkeit. Die meisten Sachen die ich vergessen hab fallen mir erst beim coden auf...
Aber so im groben entspricht das einer Antwort auf deine Frage "wie kann ich bei ausloggen dem User einen Wert in die Datenbank schreiben und beim Einloggen, prüfen, ob es diesen Wert gibt[?]".
Wie gesagt, es soll nur ne grobe Antwort auf deine "wie geht das" Frage sein. Und keine explizite Bastelanleitung!!!
Solltes du das testen musst du unbedingt ein Backup der Datenbank und der Dateien machen!
Ausserdem sind mit sicherheit noch einige weitere Fragen zu beachten. Wie verhält es sich mit dem automatischem eingeloggt bleiben. Falls du diese Funktion angeschaltet hast und auch an lassen willst, musste dir natürlich noch n paar Datenfelder und deren Funktionen mehr anschauen.
Verfasst: 19.08.2008 23:44
von ben_
Kizu hat geschrieben:hallo? kann mir niemand helfen?
ich möchte eine "Logout vergessen"-Seite wie bei Web.de.
Ich denke damit wirst Du erst recht User nerven / verärgern.
Was 4seven da erklärt hat ist doch weitaus eleganter und sinnvoller.
Wenn da Jemand ins Forum kommt, der vor ner Woche mal "unkorrekt" das Forum verlassen hat und dann gleich mit sonem Gedudel "Du hast das und das falsch gemacht" konfrontiert wird, ist er bestimmt hell erfreut.
Ich zumindest finde diese Web.de Seite grässlich nervig. Hält auf, mehr nicht.
