Site web avec php

Résolu
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
je développe un site web avec php et html(j'utilise notpad) pour mon stage dans une structure et je veux faire apparaitre un message qui apparait à chaque fois qu'on valide un formulaire d'inscription et disprait autoatiquement. C'est juste un message pour signaler à l'utilisateur que son message à passer.
Comment faire?
A voir également:

3 réponses

jeremy.s Messages postés 1226 Date d'inscription   Statut Membre Dernière intervention   79
 
Salut !

J'ai une solution que j'utilise sur tout mes projets :)

Dans ton index, tu mets :

if(isset($_SESSION['message'])){
echo '<p class="alert_message">'.$_SESSION['message'] . '</p>';
unset($_SESSION['message'];
}

Tu mets un beau css pour encadrer le message et tout ;-)

Et dans ton code quand tu traites le formulaire tu mets :
$_SESSION['message'] = 'Votre message a bien été enrengistré.';
header('Location:index.php');
exit();


Si tu n'as pas compris, je peux t'expliquer :)
1
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour votre réponse mais le temps de redirection est trés rapide et je ne vois pas le message, encore si je n'efface pas l'instruction header('Location:index.php'); l'acces au formulaire est refusé quand je clik pour acceder au formulaire il reste toujours sur la page index.
0
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
C'est que tu as mal mis en place la solution proposée.

Le header doit se trouver dans la page de traitement de ton formulaire et cette page ne doit contenir aucun affichage de texte.

et la partie alert_message doit se trouver dans la page suivante.
0
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
maintenant je parvient à acceder au formulaire mais toujours il redirige vers la page index sans afficher le message. voici ce que j'ai fait: au debut de ma page index.php j'ai copier le code if(isset($_SESSION['message'])){
echo '<p class="alert_message">'.$_SESSION['message'] . '</p>';
unset($_SESSION['message'];
}
dans ma page ma page de traitement de formulaire qui ne contient que du php j'ai copier $_SESSION['message'] = 'Votre message a bien été enrengistré.';
header('Location:index.php');
exit();
et il y'a la page qui cotient le formulaure et dans cette page mon formulaire est ceci :
<form action="formcontact.php" method="post" align="center" style="margin-left:70px">
<label for="email">Nom *</label> <input type="text" style="margin-left:100px" name="nom_visiteur" /><p />
<label for="email">Email * </label> <input type="mail" style="margin-left:100px" name="email_visiteur" />
<?php
global $email_visiteur;
if ($email_visiteur<>null)
{
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $email_visiteur))
{
echo ' ';
}
else
{

echo '<div style="color:red"> <em> L\'adresse email n\'est pas valide, recommencez !</em></div>';

}
}?>

<p />
<label for="email">Date </label> <input type="text" style="margin-left:105px" name="date_sms" value="<?php echo date('d/m/Y'); ?>"/><p />
<label for="email">Votre message *</label> <TEXTAREA type="text" style="margin-left:40px" cols="30" rows="4" name="sms_visiteur" ></TEXTAREA><p />
(*) champ obligatoire
<input type="submit" value="ENVOYER" style="margin-left:100px; background-color: #00FF00 ; border-color:#D2D2D2;-moz-border-radius: 6px; width:100px; font: Arial, Helvetica, sans-serif; font-size:17px;"/>
0
jeremy.s Messages postés 1226 Date d'inscription   Statut Membre Dernière intervention   79
 
Il faut mettre mon code tout à la fin de formcontact.php, après avoir fait tout le traitement du formulaire, donc c'est tes dernières lignes d'inscructions
0
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Merci à vous j'ai reussi.
0
math_b67 Messages postés 529 Date d'inscription   Statut Membre Dernière intervention   69
 
Salut,

Pour faire apparaitre et disparaitre un message il te faudra utiliser javascript... Tu n'en as peut etre pas le temps ou l'envi alors je te propose une solution annexe avec uniquement html et php.

Lorsque l'utilisateur valide le formulaire il est redirigé sur une autre page avec le message "Le formulaire a bien été rempli, vous allez être redirigé vers l'accueil", et donc la une redirection automatique vers l'accueil ou n'importe quelle autre page ^^

Page du formulaire :

<form method="post" action="page_de_redirection.php">
<input type="submit" name="nom" value=" Envoyer ">
</form>


Page de redirection :

<META http-EQUIV="Refresh" CONTENT="TEMPS_AVANT_REDIRECTION; url=http://www.index.php">
<p>Le formulaire a bien été rempli, vous allez être redirigé vers l'accueil.</p>


Voila, j'ai fait ça très simplement, à toi d'enjoliver :)


Mathieu


Règle N°1 : J'ai toujours raison !
Règle N°2 : Si j'ai tort, reportez-vous à la règle N°1.
0
mangacoly Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Mathieu pour votre réponse mais une solution javascript pourrais aussi enrager. voici le lien du site https://www.000webhost.com/migrate?static=true
et je veux que chaque fois que l'utilisateur rempli bien et valide le formulaire de contact un message apparait et disparait automatiquement pour lui signaler que le message a été reçu.
0