Auto logout na 5min

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Mike D.

Mike D.

12/11/2007 20:09:00
Quote Anchor link
Beste leden,

Ik ben hier pas nieuw maar om te beginnen ben ik geen groentje in PHP maar ben nu ook weer niet prof. Ik heb al enkle site's gemaakt maar nu ben ik bezig aan een site met een eigen login systeem. Nu wil ik dat je na 5min automatisch word uitgelogd.

Dit heb ik nu staan :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
// Auto logout
$nu=date('Y-m-d H:i:s');
$minu=date('i')-5;
$uur=date('H');
if ($minu < 0){
$minu=01;
$uur=date('H')+1;
}
$min=date('Y-m-d '.$uur.':'.$minu.':s');
$offline=mysql_query("SELECT online, user, online2, nuIP FROM spelers WHERE online2='1'");
$offline2=mysql_fetch_object($offline);
$offline3=mysql_query("UPDATE spelers SET online2='0' WHERE online<'{$min}'");
$offline4=mysql_query("UPDATE spelers SET nuIP='' WHERE online<'{$min}'");


Kan iemand me helpen aub ik heb verschillende mogelijkhgeiden gebruikt en vind het maar niet :s:(

Mvg
 
PHP hulp

PHP hulp

28/11/2024 11:21:59
 
Mike D.

Mike D.

12/11/2007 21:05:00
Quote Anchor link
Niemand dan ?
mod-edit::
Bumpen

Twee of meer keer achter elkaar in je eigen topic posten, voordat andere forumleden gereageerd hebben, heet "bumpen".
Omdat het opdringerig overkomt is bumpen pas na 24 uur toegestaan.
Bumpen kan een reden zijn voor de admins en mods om een topic te sluiten.
Gebruik het Afbeelding knopje om je tekst aan te passen indien nodig.
Gewijzigd op 01/01/1970 01:00:00 door Mike D.
 
Joren de Wit

Joren de Wit

12/11/2007 21:14:00
Quote Anchor link
Geen kolom met 'online' maar een kolom met 'last_active' gebruiken. In deze kolom sla je een datumtijd-stempel op van het moment waarop een gebruiker voor het laatst actief was.

Komt een gebruiker weer online met een bestaande sessie maar zijn er al meer dan 5 minuten verstreken, verwijder de sessie en laat het opnieuw inloggen.

ps. 5 minuten is wel erg kort hoor. Niet echt gebruiksvriendelijk...
 
Crispijn -

Crispijn -

12/11/2007 22:17:00
Quote Anchor link
Je kan toch ook een sessie instellen voor een bepaalde tijd?

edit:
How drukte te vroeg op tab en spatie hier met mijn laptop op de bank.

Heb er geen ervaring mee omdat ik een sessie duur altijd wel prima vindt. Ook met een cookie kan je dit maximum van vijf minuten wel instellen.

Maar ik ben het eens met Blanche, 5 min is erg kort. Waarom zou je dit willen?
Gewijzigd op 01/01/1970 01:00:00 door Crispijn -
 
Joren de Wit

Joren de Wit

12/11/2007 22:24:00
Quote Anchor link
Quote:
Je kan toch ook een sessie instellen voor een bepaalde tijd?
Deze instelling kun je alleen doen in php.ini. Het gevolg is dan dus dat dat dan direct voor je hele site geldt en niet alleen dat gedeelte.

Bovendien heb je op de meeste hosts geen toegang tot de php.ini dus kun je dit niet instellen. Cookies of de database oplossing zijn dan de alternatieven...
 
PHP erik

PHP erik

12/11/2007 22:38:00
Quote Anchor link
Quote:
Cookies of de database oplossing zijn dan de alternatieven...
Dat volg ik effe niet. Waarom niet gewoon een time() in de session en dan kijken of de session is verlopen? Ik zie niet in waarom je hier een database of cookie voor zou moeten gebruiken.
 
Joren de Wit

Joren de Wit

12/11/2007 22:42:00
Quote Anchor link
Dat zou inderdaad ook nog kunnen. Maar waarom als je al een database met een tabel gebruikers hebt, deze informatie niet gewoon wegschrijven in de database?

Op die manier ben je namelijk niet afhankelijk van de session.cookie_lifetime setting in de php.ini. Mocht die namelijk op 0 staan, wordt de sessie vernietigd na afsluiten van de browser en heb je dus ook niets meer aan de time() in je sessie.
 
PHP erik

PHP erik

12/11/2007 22:48:00
Quote Anchor link
Blanche schreef op 12.11.2007 22:42:
Dat zou inderdaad ook nog kunnen. Maar waarom als je al een database met een tabel gebruikers hebt, deze informatie niet gewoon wegschrijven in de database?
Dan ben je op elke pagina aan het query-en. Je gebruikt je database dan precies verkeerd. Een database is voor data, niet voor het onthouden van een tijdelijke sessie.

Blanche schreef op 12.11.2007 22:42:
Op die manier ben je namelijk niet afhankelijk van de session.cookie_lifetime setting in de php.ini. Mocht die namelijk op 0 staan, wordt de sessie vernietigd na afsluiten van de browser en heb je dus ook niets meer aan de time() in je sessie.
Lijkt me juist heel nuttig dat je uitgelogd bent na het sluiten van je browser. Hij wil niet voor niets dat je na 5 minuten wordt uitgelogd, dat zal met veiligheid te maken hebben. Dan kun je cookies niet eens overwegen.
 
Joren de Wit

Joren de Wit

12/11/2007 22:55:00
Quote Anchor link
Het hangt er maar net vanaf waarvoor je de gegevens wilt gebruiken.

Gaat het hier puur om veiligheid, dan is uitgelogd zijn nadat de browser gesloten wordt natuurlijk heel fijn. Als het echter om gebruiksvriendelijkheid gaat is dit waarschijnlijk niet echt gewenst.

In het eerste geval is het gebruik van een sessievariabele met time() inderdaad handig, en in het laatste weer niet (om de eerder aangegeven reden). Het alternatief in dat geval is het gebruik van cookies (eerste plaats) of de database. Deze laatste geniet dan weer de voorkeur als je over langere tijd een geschiedenis bij wilt houden van het bezoek van een gebruiker.
 
PHP erik

PHP erik

12/11/2007 22:58:00
Quote Anchor link
Ben het niet met je eens. Session-gegevens in een database kan gewoon niet. Hooguit een hash voor in een cookie. Je kunt wel logs bijhouden ja, maar dat heeft niets met sessions te maken, dat is een apart proces.
 
Frank -

Frank -

12/11/2007 23:02:00
Quote Anchor link
PHPerik schreef op 12.11.2007 22:58:
Ben het niet met je eens. Session-gegevens in een database kan gewoon niet.
En waarom zou je geen sessie-gegevens in je database kunnen/moeten bijhouden? Dat werkt perfect, zeker omdat je dan met een loadbalancer de site eenvoudig kunt schalen. Dat gaat met sessies in PHP (lees: webserver) niet lukken, het ene moment zit je op webserver A en het andere moment op webserver B. Via een database is de sessie echter altijd beschikbaar.
 
PHP erik

PHP erik

12/11/2007 23:05:00
Quote Anchor link
pgFrank schreef op 12.11.2007 23:02:
PHPerik schreef op 12.11.2007 22:58:
Ben het niet met je eens. Session-gegevens in een database kan gewoon niet.
En waarom zou je geen sessie-gegevens in je database kunnen/moeten bijhouden? Dat werkt perfect, zeker omdat je dan met een loadbalancer de site eenvoudig kunt schalen. Dat gaat met sessies in PHP (lees: webserver) niet lukken, het ene moment zit je op webserver A en het andere moment op webserver B. Via een database is de sessie echter altijd beschikbaar.
Je kunt niet op elke pagina gaan query'en naar de database als je met grote sites werkt. Je kunt het wel bijhouden, maar niet elke keer gaan query'en.
 
Frank -

Frank -

12/11/2007 23:10:00
Quote Anchor link
@PHPerik: leesvoer

Ik heb er nog nooit problemen mee gehad, heb ondertussen al flink wat databases met een session-SCHEMA draaien waarin de sessies keurig worden bijgehouden.
 
PHP erik

PHP erik

12/11/2007 23:19:00
Quote Anchor link
pgFrank schreef op 12.11.2007 23:10:
@PHPerik: leesvoer

Ik heb er nog nooit problemen mee gehad, heb ondertussen al flink wat databases met een session-SCHEMA draaien waarin de sessies keurig worden bijgehouden.
Als je echt met meerdere servers werkt en sessies moet delen over die servers dan is het gebruik van een database inderdaad vaak nuttig. In de praktijk wil je echter meestal liever databaseconnecties sparen in mijn optiek, dus zie ik het voordeel er niet van in om op elke pagina een query naar de database te doen terwijl je het ook zo effe in een session (local file) kan opslaan. Logs is een ander verhaal, dat hoeft niet bij elke refresh.
Gewijzigd op 01/01/1970 01:00:00 door PHP erik
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.