


Comment empêcher la remise de la remise à la refarisation de la page en HTML?
Jul 14, 2025 am 02:12 AMRafra?chissant après la soumission d'un formulaire peut entra?ner des soumissions répétées, qui peuvent être évitées de trois manières: 1. En utilisant le mode PRG, le serveur renvoie une réponse de redirection après le traitement de la demande de poste, ce qui fait passer l'utilisateur à une nouvelle page pour empêcher les soumissions répétées; 2. Le frontal utilise JavaScript pour désactiver le bouton de soumission après la première soumission ou empêcher des déclencheurs répétés, ce qui convient aux scénarios simples; 3. à l'aide du jeton de session, intégrez un jeton unique dans le formulaire, vérifiez-le et invalidez-le pendant la soumission, ce qui convient aux opérations très concurrentes ou sensibles.
Lorsque vous soumettez un formulaire sur une page Web, si la page d'actualisation soumet à nouveau le même contenu, il peut provoquer des données en double ou des opérations inattendues. Ce problème est courant, mais il existe plusieurs fa?ons pratiques de l'éviter.

Utiliser le mode post / redirection / get (PRG)
Il s'agit de la méthode la plus courante et recommandée. Après que l'utilisateur a soumis le formulaire, le serveur renvoie une réponse de redirection (généralement 303 ou 302) après le traitement de la demande de poste, et le navigateur sautera vers la nouvelle URL au lieu de rester sur la page de soumission d'origine.

Par exemple:
- Les utilisateurs visitent
form.html
pour soumettre des données - Le backend re?oit une demande de poste et renvoie
Location: success.html
après le traitement des données. - Le navigateur sautera automatiquement au
success.html
De cette fa?on, même si l'utilisateur actualise la page, il rechargera simplement success.html
sans soumettre à plusieurs reprises le formulaire.

Les points clés à réaliser sont:
- Le backend doit définir correctement le code d'état HTTP et l'en-tête de l'emplacement
- La page de formulaire et la page de traitement doivent être con?ues séparément
Utilisez JavaScript sur l'avant pour éviter les soumissions en double
Si vous ne souhaitez pas ou ne pouvez pas utiliser la redirection backend, vous pouvez utiliser JavaScript pour contr?ler si le formulaire permet la remise.
Une pratique courante consiste à désactiver le bouton Soumettre après la première soumission de l'utilisateur:
<formons onSubmit = "this.submitbutton.disabled = true;"> <! - Formez du contenu -> <Button type = "soumission" name = "soumibutton"> soumettre </fontificateur> </ form>
Ou être plus flexible et faire des jugements dans JS:
<cript> Soit soumis = false; document.QuerySelect if (soumis) { E.PreventDefault (); } autre { soumis = true; } }); </cript>
Cette approche convient aux scénarios simples, mais il n'empêche pas complètement les utilisateurs de répéter les soumissions grace à un rafra?chissement manuel de la barre d'adresse.
Tenier le jeton de session (jeton unique)
Cette méthode est plus adaptée à la prévention des formes malveillantes de glissement ou de problèmes de soumission répétés sous une concurrence élevée. L'idée de base est: générer un jeton unique lors du chargement du formulaire et enregistrez-le dans la session; Vérifiez si le jeton est valide lors de la soumission, et le jeton sera invalidé immédiatement après le succès de la vérification.
Les étapes sont les suivantes:
- Générez un jeton aléatoire lorsque la page est chargée et intégrée dans le champ Hidden Form
- Lorsque l'utilisateur se soumet, le serveur vérifie si le jeton correspond et n'a pas été utilisé.
- S'il correspond, traitez la demande et marquez le jeton utilisé
- Le jeton est illégal lors de la soumission à nouveau, et l'exécution est refusée
Cette méthode est relativement s?re, mais nécessite une coopération frontale et convient aux opérations sensibles telles que la soumission des commandes, le paiement, etc.
Conclusion
Ces méthodes ont leurs propres scénarios applicables: le mode PRG est simple et efficace, la méthode JS est pratique et rapide, et le jeton est plus s?r mais a un peu plus de complexité. Choisissez simplement la bonne méthode en fonction des besoins de votre projet. Fondamentalement, c'est tout.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les métadonnées à HTMLhead sont cruciales pour le référencement, le partage social et le comportement du navigateur. 1. Définissez le titre et la description de la page, utilisez et gardez-le concis et unique; 2. Ajoutez des informations sur les cartes OpenGraph et Twitter pour optimiser les effets de partage social, faire attention à la taille de l'image et utiliser des outils de débogage pour tester; 3. Définissez le jeu de caractères et les paramètres de la fenêtre pour s'assurer que le support multi-langues est adapté au terminal mobile; 4. Les balises facultatives telles que l'auteur Copyright, le contr?le des robots et le contenu en double prévention canonique doivent également être configurés raisonnablement.

Toléarnhtmlin2025, chooseAtUtorialthatBalanShands-on -PracticewithModerNstandardsAnd IntegratescsSandjavascriptBasics.1.prioritizehands-onlearningwithstep-by-steprojectsmelindingapersonalprofileorblayout.20

Comment faire des modèles de courrier HTML avec une bonne compatibilité? Tout d'abord, vous devez construire une structure avec des tables pour éviter d'utiliser DIV Flex ou la disposition de la grille; Deuxièmement, tous les styles doivent être inclus et ne peuvent pas compter sur des CS externes; Ensuite, l'image doit être ajoutée avec une description ALT et utiliser une URL publique, et les boutons doivent être simulés avec une table ou un TD avec une couleur d'arrière-plan; Enfin, vous devez tester et ajuster les détails sur plusieurs clients.

Lorsqu'il n'y a pas de serveur backend, la soumission de formulaire HTML peut toujours être traitée via une technologie frontale ou des services tiers. Les méthodes spécifiques incluent: 1. Utilisez JavaScript pour intercepter les soumissions de formulaires pour réaliser la vérification des entrées et les commentaires des utilisateurs, mais les données ne seront pas persistées; 2. Utilisez des services de formulaire de serveur tiers tels que FormSpree pour collecter des données et fournir des fonctions de notification et de redirection par e-mail; 3. Utilisez LocalStorage pour stocker les données des clients temporaires, ce qui convient à l'enregistrement des préférences des utilisateurs ou à la gestion de l'état de l'application d'une seule page, mais ne convient pas au stockage à long terme d'informations sensibles.

La classe, l'identification, le style, les données et le titre sont les attributs globaux les plus couramment utilisés en HTML. La classe est utilisée pour spécifier un ou plusieurs noms de classe pour faciliter le paramètre de style et les opérations JavaScript; ID fournit des identifiants uniques pour les éléments, adaptés aux sauts d'ancrage et au contr?le JavaScript; Le style permet d'ajouter des styles en ligne, adaptés au débogage temporaire mais pas recommandé pour une utilisation à grande échelle; Data-Properties est utilisé pour stocker des données personnalisées, ce qui est pratique pour l'interaction frontale et back-end; Le titre est utilisé pour ajouter des invites de souris, mais son style et son comportement sont limités par le navigateur. La sélection raisonnable de ces attributs peut améliorer l'efficacité du développement et l'expérience utilisateur.

Le chargement paresseux natif est une fonction de navigateur intégrée qui permet le chargement paresseux des images en ajoutant un attribut chargé = "paresseux" à la balise. 1. Il ne nécessite pas de bibliothèques JavaScript ou tierces et est utilisée directement dans HTML; 2. Il convient aux images qui ne sont pas affichées sur le premier écran sous la page, les modules complémentaires de défilement de la galerie d'images et les grandes ressources d'image; 3. Il ne convient pas aux images avec premier écran ou affichage: aucun; 4. Lorsque vous l'utilisez, un espace réservé approprié doit être réglé pour éviter la gigue de mise en page; 5. Il devrait optimiser le chargement d'image réactif en combinaison avec les attributs SRCSET et tailles; 6. Les problèmes de compatibilité doivent être pris en compte. Certains anciens navigateurs ne le soutiennent pas. Ils peuvent être utilisés grace à la détection des fonctionnalités et combinés avec des solutions JavaScript.

Pour ajouter un arrière-plan vidéo à une page Web, la clé consiste à utiliser correctement les balises HTML et à optimiser les attributs pertinents. 1. Utilisez les balises comme arrière-plan et utilisez le positionnement CSS pour remplir la page ou la zone locale; 2. Le format vidéo est préféré.mp4, et WebM est ajouté pour considérer la compatibilité; 3. Ajoutez des attributs en malentend et en ligne pour assurer la lecture automatique du c?té mobile; 4. Contr?lez la taille de la vidéo pour optimiser la vitesse de chargement, et il est recommandé de le garder à des dizaines de MB; 5. Ajouter des boucles pour atteindre la lecture de boucle sans couture; 6. Il peut être appliqué de manière flexible aux blocs en plein écran ou locaux, et différents effets sont obtenus en ajustant la taille de la taille du conteneur et la méthode de positionnement. Les étapes ci-dessus peuvent réaliser un arrière-plan vidéo stable et magnifique.

Pour rendre les IFRames réactifs, le noyau est d'utiliser CSS pour contr?ler le rapport d'aspect et le combiner avec le conteneur d'enveloppement pour obtenir l'adaptation. 1. Utilisez des techniques de rembourrage pour créer des bo?tes à conteneurs avec des proportions fixes. Les ratios communs tels que 16: 9 correspondent au padding-top56,25%, 4: 3 correspondent à 75% et 1: 1 correspondent à 100%; 2. Réglez la largeur d'Iframe à 100% et utilisez un positionnement absolu pour remplir le conteneur, ou utilisez l'attribut de rapport aspect pour maintenir la proportion; 3. Lors du traitement du contenu intégré à tiers, contr?lez le rapport via le transport des conteneurs et garantissez que l'attribut AutorfullScreen est ajouté pour prendre en charge la lecture à écran complet sur les terminaux mobiles. Ma?tre les paramètres du conteneur et de la proportion pour réaliser la réactivité de l'Iframe
