|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
J'aurais dû rajouter dans le titre : "autant que possible".
Le contexte, dans une application web (php, sgbd, symfony, jquery) on veut pouvoir s'assurer avant de quitter la page du "form" que les données modifiées ont été sauvegardées ou volontairement abandonnées. Ce en ce prémunissant d'un maximum d'interventions intempestives de notre brave utilisateur. L'idéal serait qu'il n'ait pas la possibilité de quitter son écran sans s'être assuré que les données modifiées aient été sauvegardées ou volontairement abandonnées. Avez-vous déjà traité ce type de problème ? Avez-vous une solution ?
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#2 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
forcer une sauvegarde à chaque modification (avec ajax) ?
onchange onblur ...
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#3 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
J'y ai pensé.
Sauf qu'il est fort possible que l'utilisateur ne veuille pas modifier... il faut donc lui laisser la possibilité de modifier ou d'annuler la modification. Et faire un dialogue à chaque changement de champ n'est pas optimal. Après, j'ai bien envisager de garder en cache sur le serveur l'enregistrement modifié au coup par coup, en attendant la sauvegarde (ou l'annulation), mais cela n'empêche pas de sortir facilement de la fenêtre d'édition. Sans compter les problèmes potentiels liés à l'édition en multi-utilisateur. Je m'oriente vers un accès en consultation avec un passage volontaire sur l'écran d'édition, écran qui aura un aspect différent et n'aura pas d'accès au menu ni au changement d'enregistrement. Il sera moins aisé de changer "par erreur" et d'oublier les modifications. Il restera possible de fermer fenêtre et/ou onglet (sans oublier la bonne coupure de courant). Autre avantage, j'ai la possibilité de mieux gérer le verrouillage des enregistrements au niveau du serveur. Reste que si je pouvais faire un avertissement (et bloquer éventuellement) la fermeture de la fenêtre et/ou de l'onglet ce serait un plus appréciable. Mais je ne vois pas trop comment.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Ingé. Info. Inscription : janvier 2008 Messages : 338 ![]() |
En gros tu veux que ton site réagisse comme word par exemple, c'est ça ?
@SpaceFrog j'imagine qu'il veut permettre l'annulation des modifications. Tu peux capter la fermeture d'un site, je ne l'ai jamais implémenté mais j'ai vu des site internet le faire. il me semble. et la tu dois pouvoir faire un à la place d'un qui annonce que les modifications seront perdues. Pour t'aider, tu pourrai mettre en place une variable booléène globale. Qui passerai à true à la moindre modification (pour ça il faut mettre un onChange dans chacun des tes inputs qui passera la variable à true, et le bouton sauvegarder qui la passera à false).
__________________
Memento Quia Pulvis Es, Et In Pulverem ReverteriS |
|
|
00
|
|
|
#5 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
c'est plutot unbeforeunload
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#6 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
@pymento: oui.
J'avais de gros doutes sur la possibilité de pouvoir récupérer un événement sur la fermeture de la fenêtre, mais je n'ai pas pensé que si l'on ferme la fenêtre, on ferme le body... Vu que mon utilisateur bascule volontairement en édition, ne pourrais-je pas tout simplement interdire la fermeture de la fenêtre (du body) avec une bâte boite "fermeture impossible, vous devez sauvegarder ou annuler vos modifications au préalable" ? L'idée me parait plaisante !
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#7 | ||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 806 ![]() |
Code :
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
||
|
10
|
|
|
#8 |
|
Membre confirmé
![]() Ingé. Info. Inscription : janvier 2008 Messages : 338 ![]() |
Il ne me semble pas qu'on puisse interdire l'utilisateur de fermer, sinon les popups s'en donneraient à coeur joie ^^
Avec ma technique tu retombe sur ce que tu recherche, une boite confirm "annuler les changement ?" s'il il met ok il annule et s'il met annuler il reste sur la page. Libre a lui de sauvegarder quand bon lui semblera.
__________________
Memento Quia Pulvis Es, Et In Pulverem ReverteriS |
|
|
00
|
|
|
#9 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
ça ne bloque pas une fermeture sauvage
a part faire des sauvegardes sur des onchange et onblur et conserver un log ...
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#10 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 806 ![]() |
Citation:
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
00
|
|
|
#11 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Je pense que la confirmation de fermeture sera suffisante. Vu que le mode édition ne sera qu'à la demande (mode vue en standard) l'utilisateur va donc explicitement demander à entrer en modification et le système pourra alors prévenir une fermeture accidentel et "maturel" de la fenêtre durant cette phase d'édition.
Après, s'il quitte à la sauvage il ne pourra s'en prendre qu'à lui même. Merci à tous, je vais réécrire toute ma procédure CRUD en pensant à vous !
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
Copyright © 2000-2012 - www.developpez.com