Post Formulaire et Refresh Page
bonjour, je suis confronté à un petit problème après avoir soumis le formulaire en $_POST['submit'], lorsque j’actualise ma page il Repost automatiquement Grr
Existe-t-il une solution pour contourner ce problème ? Merci :merci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| <?php
require_once ('includes/settings.php');
if(isset($_POST['submit'])) {
$name = strip_tags($_POST['name']);
$email = strip_tags($_POST['email']);
$tilte = strip_tags($_POST['tilte']);
$category = strip_tags($_POST['category']);
$message = strip_tags($_POST['message']);
$from = 'Code Snippets';
$subject = 'Code Snippets';
$body ="From: $name\n E-Mail: $email\n Titre: $tilte\n Categorie: $category\n Message:\n $message";
$captcha = $_POST["captcha"];
$result_captcha = $_POST["result_captcha"];
if (!$name) {
$result = '<div class="alert alert-primary" role="alert">Entrez votre pseudo !
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
if (!$email || !filter_var($email, FILTER_VALIDATE_EMAIL)) {
$result = '<div class="alert alert-primary" role="alert">Entrez votre adresse mail !
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
if (!$tilte) {
$result = '<div class="alert alert-primary" role="alert">Entrez votre titre !
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
if (!$message) {
$result = '<div class="alert alert-primary" role="alert">Entrez votre code snippet !
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
if ($captcha !== $result_captcha) {
$result = '<div class="alert alert-primary" role="alert">Erreur Captcha !
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
if (!$result) {
if (mail ($admin, $subject, $body, $from)) {
$result = '<div class="alert alert-primary" role="alert">Votre code snippet s'affichera aprés approbation du webmaster, merci pour votre contribution.
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
} else {
$result = '<div class="alert alert-primary" role="alert">Oups, une erreur s'est produite lors de l'envoi de votre code snippet, si le problème persiste contactez le webmaster.
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button></div>';
}
}
}
?> |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
<?php echo $result; ?>
<form action="" method="post">
<div class="form-row">
<div class="col-md-2 mb-3">
<input type="text" class="form-control" name="name" placeholder="Pseudo">
</div>
<div class="col-md-3 mb-3">
<input type="text" class="form-control" name="email" placeholder="Adresse mail">
</div>
<div class="col-md-2 mb-3">
<?php $random_captcha = substr(str_shuffle(str_repeat("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", 4)), 0, 4); ?>
<input type="hidden" name="result_captcha" value="<?php echo $random_captcha; ?>">
<input type="text" class="form-control" name="captcha" placeholder="Captcha : <?php echo $random_captcha; ?> ?">
</div>
<div class="col-md-3 mb-3">
<button class="btn btn-primary" type="submit" name="submit">Envoyer</button>
</div>
</div>
<div class="form-row">
<div class="col-md-8 mb-3">
<input type="text" class="form-control" name="tilte" placeholder="Titre">
</div>
<div class="col-auto mb-3">
<select class="custom-select" name="category">
<option>Base de données</option>
<option>Chaîne de caractères</option>
<option>Composants</option>
<option>Composants Indy</option>
<option>Date - Heure</option>
<option>Fichier - Répertoire</option>
<option>Graphique</option>
<option>Impression</option>
<option>Internet</option>
<option>Math</option>
<option>Microsoft Office</option>
<option>Multimédia</option>
<option>Système</option>
</select>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<textarea class="form-control" rows="20" style="font: 10pt Courier New;" name="message" spellcheck="false" placeholder="Code Snippet..."></textarea>
</div>
</div>
</form> |