Temps Maximum

Eléphant du PHP | 330 Messages

03 avr. 2006, 19:49

Bonsoir,

Comment faire pour que dès que l'on reste plus de 30 secondes sans toucher à une page on en sort (exemple page de login).

Merci

Mammouth du PHP | 768 Messages

03 avr. 2006, 20:16

en javascript avec les fonctions setTimeout et clearTimeout
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Eléphant du PHP | 330 Messages

03 avr. 2006, 20:45

Merci mais come JS ne marche pas avec tous les navigateurs, n'y a t-il pas d'alternative avec PHP

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

03 avr. 2006, 20:51

la solution php ne peut avoir un effet immédiat faut attendre le chargement d'un page. Mais le principe serai de sauvegarder le timestamp actuel en session et lors d'un redirection vérifier si ce timestamp n'as pas une différence suppérieure à 30 secondes avec celui pris sur le chargement.

Sinon Javascript seule solution à effet immédiat

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 330 Messages

03 avr. 2006, 20:52

Merci à tous les deux.

Je vais essayer

Eléphant du PHP | 330 Messages

07 avr. 2006, 10:45

Merci cela marche.

Un peu plus compliqué :

Je souhaite que si la personne ne saisit rien dans une des cases pendant 10 secondes, ile est redirigé.

Merci d'avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

07 avr. 2006, 11:19

Pour la redirection automatique et pour ne pas utiliser de javascript, tu peux aussi utiliser le meta-tag refresh

Code : Tout sélectionner

<META HTTP-EQUIV="Refresh" CONTENT="10; URL=http://www.phpfrance.com/">
Te redirigeras vers l'url passée au bout de 10 secondes après l'ouverture (à remplacer par 1800 pour la demi heure :)). L'inconvénient, c'est qu'il ne se base pas sur l'activité, mais c'est franchement pas de bol s'il attend pile une demi heure avant d'essayer de se logger ;)

Pour la deuxième question il te faut effectivement utiliser du javascript et les fonctions setTimeout et clearTimeout. Il te suffit lorsque l'utilisateur arrive sur la page de déclencher un timer qui appellera une fonction de redirection au bout de 10 secondes, et de l'arrêter lorsque l'utilisateur se place dans un des champs (onFocus), voire commence à saisir (onKeyPress)

Eléphant du PHP | 330 Messages

07 avr. 2006, 11:30

Merci je vais essayer