Maison >développement back-end >tutoriel php >Comment créer des formulaires PHP sécurisés à publication automatique : meilleures pratiques et exemples ?

Comment créer des formulaires PHP sécurisés à publication automatique : meilleures pratiques et exemples ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-29 11:53:30344parcourir

How to Create Secure Self-Posting PHP Forms: Best Practices and Examples?

Formulaires PHP à publication automatique : comment soumettre les résultats au même formulaire

Formulaires qui soumettent les résultats à eux-mêmes, plutôt qu'à un emplacement externe , sont connus sous le nom de formulaires d’auto-publication. Cet article explore les meilleures pratiques pour créer des formulaires d'auto-publication en PHP.

Approche appropriée : utilisation de $_SERVER["PHP_SELF"]

Pour créer un formulaire d'auto-publication formulaire, vous pouvez utiliser la variable $_SERVER["PHP_SELF"] en conjonction avec htmlspecialchars pour éviter les failles de sécurité. Cette méthode garantit la conformité W3C et est compatible avec la plupart des navigateurs.

Exemple de formulaire

Voici un exemple de formulaire qui prend un nom et une adresse e-mail, puis affiche les valeurs soumises :

<code class="php"><?php if (!empty($_POST)): ?>
    Welcome, <?php echo htmlspecialchars($_POST["name"]); ?>!<br>
    Your email is <?php echo htmlspecialchars($_POST["email"]); ?>.<br>
<?php else: ?>
    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
        Name: <input type="text" name="name"><br>
        Email: <input type="text" name="email"><br>
        <input type="submit">
    </form>
<?php endif; ?></code>

Attribut d'action vide

Vous pouvez également omettre l'attribut d'action de la balise form. Bien que ce ne soit pas valide par le W3C, cela fonctionne dans la plupart des navigateurs modernes. Dans ce cas, le formulaire se soumettra automatiquement à lui-même. Notez cependant que cette approche n'est pas conforme aux normes du W3C.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn