J'implémente un système de sauvegarde automatique relativement simple et j'aimerais le faire en utilisant la bibliothèque Prototype. J'utilise la requête PeriodicalUpdater, mais cela ne fonctionne pas comme je l'espérais. En bref, j'essaye, périodiquement, d'envoyer le contenu d'un textarea via une requête AJAX à une page PHP qui l'enregistrera dans une base de données MySQL. Je fais quelque chose comme (code abrégé):Saisie de formulaire d'enregistrement automatique à l'aide de Prototype et de PHP
<html>
<head>
<script type="text/javascript" src="scripts/prototype.js"></script>
<script>
function autosave() {
new Ajax.PeriodicalUpdater('save_message', 'autosave.php',
{
method: 'post',
parameters: {id: $('id').value, save_text: $('myInput').value},
frequency: 5,
decay: 2
});
}
</script>
</head>
<body>
<input type="hidden" id='id' name='id' />
<textarea id='myInput' name='myInput'></textarea>
<script>
autosave();
</script>
</body>
</html>
Alors autosave.php prendra le contenu du formulaire et de les écrire à ma base de données. Cette partie fonctionne bien. Qu'est-ce qui se passe, comme je l'ai découvert, est PeriodicalUpdater est appelé avec l'entrée de formulaire d'origine, puis est appelé périodiquement avec cette entrée de formulaire initial.
Donc, c'était une longue configuration pour une question relativement courte: Comment utiliser Prototype (si possible) pour effectuer périodiquement une requête AJAX en utilisant la valeur de la zone de texte courante?