php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.05.2008, 15:01  
Erfahrener Benutzer
 
Registriert seit: 09.05.2005
Beiträge: 561
BartTheDevil89 kann nur auf Besserung hoffen
Standard Session-System in Verbindung mit einer Datenbank

Hallo,

ich möchte ja Session-System einrichten. Also ich möchte jedem Besucher der auf meine Seite kommt eine Session zuordnen, die er eigentlich auch für seinen Besuch behalten soll. In Verbindung mit einem Login möchte ich dann eigentlich auch in dieser Session festlegen können, ob zum Beispiel ein Besucher eingeloggt ist, etc. Am Ende dann auch Statistiken über Aufenthaltslänge, Besucherzahlen, etc. erhalten, ein System mit "Eingeloggt bleiben" erstellen und diverse Besucherinfos in der Session speichern.
Was ich bisher gelesen haben ist, dass es am besten ist, wenn ich dann über eine session-datenbank gehe. Also ich erstelle ne Session ganz normal und speichere in der DB dann die session-id als Eintrag. Die ganzen Infos, etc. kann ich dann einfach in der DB speichern und bei jedem Aufruf einer Seite wird dann die session-id gelesen und der entsprechende Datenbankeintrag ausgelesen.
Aber gibts da irgendwie mal ein Tutorial oder ähnliches? Denn es müssen ja auch so Sachen wie das Löschen alter Sessions, etc. mit gemacht werden.

Danke
BartTheDevil89 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 26.05.2008, 15:19  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Es gibt genug Tutorials, musst du einfach mal nach suchen!

Und alte Sessions aus der Datenbank löschen kannst du anhand eines Timestamps, du speicherst einfach jedes mal wenn der User klickt den aktuellen Timestamp in dem Eintrag zu seiner Session. Dann kannst du einmal pro Tag z.b. alle Sessions löschen die älter als 24h sind.
Flor1an ist offline   Mit Zitat antworten
Alt 26.05.2008, 17:04  
Erfahrener Benutzer
 
Registriert seit: 09.05.2005
Beiträge: 561
BartTheDevil89 kann nur auf Besserung hoffen
Standard

Zitat:
Zitat von RaZoR
Es gibt genug Tutorials, musst du einfach mal nach suchen!

Und alte Sessions aus der Datenbank löschen kannst du anhand eines Timestamps, du speicherst einfach jedes mal wenn der User klickt den aktuellen Timestamp in dem Eintrag zu seiner Session. Dann kannst du einmal pro Tag z.b. alle Sessions löschen die älter als 24h sind.
Naja, also grundsätzlich ist es doch das hier, oder?

1. Besucher betritt die Seite
- Überprüfen ob Session-Cookie mit Session-Id vorhanden? --> Session noch aktuell(also noch in der DB)?
- Wenn kein Cookie vorhanden oder Session nichtmehr aktuell, dann neue erstellen und die db-id in der session inkl. cookie speichern

2. alte Sessions über delete from table where timestamp < $time; (wobei time = time + 24h zum Beispiel)

Sonst noch was?
BartTheDevil89 ist offline   Mit Zitat antworten
Alt 29.05.2008, 08:53  
Erfahrener Benutzer
 
Registriert seit: 09.05.2005
Beiträge: 561
BartTheDevil89 kann nur auf Besserung hoffen
Standard

Hab ich was vergessen oder passt das so von Idee her?
BartTheDevil89 ist offline   Mit Zitat antworten
Alt 29.05.2008, 14:51  
Erfahrener Benutzer
 
Registriert seit: 27.08.2004
Beiträge: 239
vollkommenegal
Standard

Ich verstehe nicht, was Du da ständig prüfen und löschen willst usw.!?

Wenn Du über die "Surf-Gewohnheiten" Deiner eingeloggten Benutzer etwas wissen willst (so hab ich Dein Anliegen verstanden), dann

a) müssen sich Benutzer mit Name/Passwort einloggen
b) wird beim erfolgreichen Login eine SESSION geöffnet und u.a die (eindeutige!) Benutzer-ID gespeichert
c) wird am Anfang jeden Skriptes ein Protokoll-Eintrag mit der SESSION-Benutzer-ID, dem Timestamp und der Aktion (bspw. "Eintrag verfasst") in die Datenbank geschrieben

Dann schreibst Du ein Skript, das Dir die Vorgänge auflistet und natürlich anstatt der Benutzer-ID den Namen des Benutzers zeigt.

Keine Prüfung von Session-Cookies, Löschung von alten Sessions und was Du da sonst noch alles machen wolltest...

cya
vollkommenegal ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Session Problem karina_02 PHP Tipps 2008 6 18.05.2008 22:37
Verbindung zur Teamspeak MySQL Datenbank herstellen errox PHP Tipps 2008 24 06.03.2008 16:54
MySQL verbindung TeazY PHP Tipps 2008 2 18.12.2007 14:34
Problem bei session Lifetime Cyberbob_at_tot PHP Tipps 2007 5 05.06.2007 17:47
Session in Session tinchen PHP Tipps 2007 22 21.03.2007 19:53
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Bei Session - verfall socke PHP Tipps 2005-2 12 01.09.2005 02:30
Verbindung zur Datenbank klappt nicht ? PHP Tipps 2005-2 15 25.07.2005 12:30
[Erledigt] Verbindung auf eine Datenbank Datenbanken 5 07.07.2005 20:38
Verbindung zur Datenbank funktioniert nicht picco PHP Tipps 2005 5 30.05.2005 17:15
Session und Ip fragEN Skazi PHP Tipps 2005 2 10.02.2005 13:32
[Erledigt] Hilfe...PhpBB Session Problem!! PHP Tipps 2004-2 2 15.12.2004 18:28
[Erledigt] SQL Verbindung zur Datenbank Datenbanken 3 17.09.2004 09:08

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
session system, php session system, http://www.php.de/datenbanken/45951-session-system-verbindung-mit-einer-datenbank.html, session in datenbank, php session einrichten, session erstellen datenbank, session datenbank, nach ablauf der session aus datenbank löschen, php session datenbank, session in datenbank speichern, system. session, session id nach timeout behalten, darf ich sessions in datenbank löschen, system \ session\, für jede session einen datenbank eintrag, php eigenes sessionsystem, phpbb session datenbank, session system php, sessions in db, session aus db löschen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:41 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.