J'ai un site Web avec un formulaire de contact. L'utilisateur soumet le nom, l'email et le message et le site m'envoie les détails par email.Assurez-vous que le formulaire de contact n'est pas perdu (python)
Très occasionnellement, mon serveur a un problème avec son système de messagerie et l'utilisateur reçoit une erreur et ces détails de contact sont perdus. (Ne dites pas: obtenez un meilleur serveur, n'importe quel serveur peut recevoir des courriels de temps en temps et nous recevons beaucoup de soumissions).
Je voudrais mettre en œuvre un système qui pourrait stocker les détails de l'utilisateur si la fonction d'envoi de courrier renvoie avec un code d'erreur. Ensuite, lors de chaque soumission supplémentaire, vérifiez les soumissions stockées et essayez de les envoyer à moi.
Mais comment stocker les données? J'utilise python donc j'ai pensé à utiliser shelve (fichier unique semi-base de données). Ou peut-être que quelqu'un pourrait suggérer un meilleur format de données?
Le problème que je vois avec une approche de fichier unique est conditions de course: deux ou plusieurs e-mails échoués en même temps entraîneraient deux modifications dans le fichier de données entraînant une corruption des données.
Alors que faire? Solution multi-fichier, verrouillage de fichier ou autre chose?
+1: Enregistrer dans la base de données. Email séparément. Toujours le même processus. Aucun cas particulier. –