CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos

|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP 
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |

16.01.2003, 21:11:39
|
Anfänger
|
|
Registriert seit: Jan 2003
Beiträge: 4
|
|
Login Logout Script
Hallo,
ich suche eine Möglichkeit wie ich für einem Bereich einer Website ein Login realisieren kann. Es soll wie folgt funktionieren:
Bei Aufruf wird ein Login-Bildschirm angezeigt
Login-Name und Passwort sollen in einer My-SQL Datenbank gespeichert sein und überprüft werden.
Und jetzt kommts!
Das Login soll automatisch ( nicht durch klick auf eine "Logout"-Schaltfläche) ungültig werden wenn:
Der Angemeldete die Seite verlässt. Also egal ob mit der "Zurück"-Schaltfläche, durch Schliessen des Browserfenster, durch Eingabe einer anderen URL usw.
Hat jemand Tips zur Realisierung? Kennt jemand freie Script die als Anregung dienen können?
Ich habe was übers Session gelesen. Kann es mit einer Session-ID funktionieren? Wie?
Ich bin in dieser Hinsicht ein blutiger Anfännger und für jede Hilfe dankbar.
Gruß
Werner
|

16.01.2003, 21:15:27
|
|
Automatisch geht das nicht, da PHP ja nicht mitbekommt, wenn jemand die Seite verlässt. Du kannst aber zusätzlich zu Passwort und Username noch eine Timestamp in der DB speichern. Das Loginscript killt dann alle Logins, die älter sind als z.B. eine halbe Stunde. Das Problem dabei ist, dass dafür jemand das Loginscript aufrufen muß damit das überprüft wird. Das könntest Du aber umgehen, in dem Du einen Cronjob laufen läßt der alle halbe Stunde ein "Kontrollscript" aufruft.
|

16.01.2003, 21:24:11
|
Anfänger
|
|
Registriert seit: Jun 2002
Beiträge: 75
|
|
Hi!
Natürlich funktioniert das mit Sessions.
Du gibst dem User eine SessionID (session_start()).
Dann ein Loginscript mit Name/Passwort. Der User muss natürlich vorher in einer DB angelegt werden (Anmeldeformular in dem der gewünschte Name, die EMail Adresse und das gewünschte Passwort gespeichert werden)!
Dann schreibst Du in die Session den Namen und die EMail Adresse oder nur die EMail -> reicht auch ($_SESSION["email"]).
Wenn der User nun eine andere Seite aufruft erlischt die Session. Das selbe passiert auch wenn eine ander URL aufgerufen wird. Machst Du das ganze per LogOut Button löscht Du ganz einfach die Session (session_unregister["email"]).
Probiers mal aus!
Gruss, Viper
|

16.01.2003, 21:27:26
|
|
Für ein einfach Login geht das - aber wenn Du was in die DB schreibst (z.B. was in der Richtung: User ist eingeloggt) um den Login sicherer zu machen, wird der Inhalt nicht geändert.
|

16.01.2003, 21:28:17
|
Anfänger
|
|
Registriert seit: Jan 2003
Beiträge: 4
|
|
Session
Ja aber,
kann ich der Session auch eine Gültigkeit zuweisen? Das ganze soll ja auch funktionieren wenn jemand nicht auf Logout klickt sondern z.B. einfach eine neue URL in die Adresszeile eingibt.
|

16.01.2003, 21:31:39
|
|
Eine Session hat im automatisch eine bestimmte Haltbarkeit - das ist in der PHP.ini festgelegt. Bei 1&1 sind das 1440 (Sekunden = 24 Minuten, nehme ich mal an). Bei Lycos sind 20 Minuten hab ich mal gehört!
|

16.01.2003, 21:35:17
|
Anfänger
|
|
Registriert seit: Jan 2003
Beiträge: 4
|
|
Muss ich nachfragen
Das mit der Haltbarkeit muss ich nachfragen. Übrigens, die Domain ist auf einem Windows II-Server gehostet. Ich muss mal fragen wie es da mit den Cronjobs ist.
|

16.01.2003, 21:37:00
|
|
Wenn Du ein Script mit
<?php
phpinfo();
?>
auf Deinen Server legst und aufrufst, bekommst Du die Einstellung unter session.gc_maxlifetime oder so ähnlich zu sehen!
Du kannst die Haltbarkeit auch beeinflussen:
ini_set("session.gc_maxlifetime", AnzahlSekunden);
Unter Windows würde ich vermuten kannst Du den Taskplaner als Cron Ersatz verwenden.
|

16.01.2003, 21:42:28
|
Anfänger
|
|
Registriert seit: Jan 2003
Beiträge: 4
|
|
ich werd das mit den Session mal hier in selfphp genau nachlesen. Wenn ich das jetzt richtig verstanden habe, brauche ich ja garkeinen cronjob.
Danke erstmal für die schnelle Unterstützung
Gruß
Werner
|

16.01.2003, 22:29:06
|
Anfänger
|
|
Registriert seit: Jun 2002
Beiträge: 75
|
|
Natürlich funktioniert das ganze auch wenn der User eine neue URL eingibt. Er verlässt Deine Seite und somit wird die Session mit der er angemeldet ist ungültig.
Viper
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 02:43:54 Uhr.
|