Formulaire qui ne recharge pas la page
19 messages
• Page 1 sur 2 • 1, 2
-

Vincent1975 - WRInaute impliqué

- Messages: 516
- Inscription: 19 Oct 2006
Formulaire qui ne recharge pas la page
Bonjour,
J'ai un petit problème technique, et je ne trouve pas la solution sur le net.
C'est à la page -http://www.linguistics4u.eu/coursfle.htm. J'ai mis un petit formulaire de contact rapide en bas de page, genre commentaires. Il passe en traitement par un formulaire envoi.php, que j'ai eu du mal à faire, vu que le php c'est pas mon truc. Maintenant le problème c'est que, si je veux mettre ce formulaire sur plusieurs pages, il va me falloir autant de formulaires de traitement, si je veux que le visiteur soit redirigé sur la même page après l'envoi du formulaire. Existe-t'il un moyen d'envoyer le formulaire mais sans que le visiteur soit dirigé vers ma page de traitement? Que le formulaire parte en gros sans provoquer de rechargement de ma page, pour que le visiteur reste où il est. D'autant que mon bouton dit "Merci" quand on clique dessus, donc pas la peine de faire un truc montrant que le formulaire est parti.
Merci, V.
J'ai un petit problème technique, et je ne trouve pas la solution sur le net.
C'est à la page -http://www.linguistics4u.eu/coursfle.htm. J'ai mis un petit formulaire de contact rapide en bas de page, genre commentaires. Il passe en traitement par un formulaire envoi.php, que j'ai eu du mal à faire, vu que le php c'est pas mon truc. Maintenant le problème c'est que, si je veux mettre ce formulaire sur plusieurs pages, il va me falloir autant de formulaires de traitement, si je veux que le visiteur soit redirigé sur la même page après l'envoi du formulaire. Existe-t'il un moyen d'envoyer le formulaire mais sans que le visiteur soit dirigé vers ma page de traitement? Que le formulaire parte en gros sans provoquer de rechargement de ma page, pour que le visiteur reste où il est. D'autant que mon bouton dit "Merci" quand on clique dessus, donc pas la peine de faire un truc montrant que le formulaire est parti.
Merci, V.
-

Vincent1975 - WRInaute impliqué

- Messages: 516
- Inscription: 19 Oct 2006
J'ai oublié de dire que vous pouvez m'enyer des tests avec des mails bidons pour voir, j'effacerai.
Merci
-

narayana - WRInaute impliqué

- Messages: 835
- Inscription: 28 Jan 2005
a première vue
si tu mets un champ hidden dans ton formulaire
par exemple ceci
Lorsque tu soumets le formulaire, tu fais ton traitement dans envoi.php puis tu récupères le référer et tu rediriges directement sur la page référer.
Cela peut à priori fonctionner
si tu mets un champ hidden dans ton formulaire
par exemple ceci
- Code: Tout sélectionner
<input type="hidden" name="referer" value="<?=$_SERVER['HTTP_REFERER'];?>"/>
Lorsque tu soumets le formulaire, tu fais ton traitement dans envoi.php puis tu récupères le référer et tu rediriges directement sur la page référer.
Cela peut à priori fonctionner
-

biscuit - WRInaute impliqué

- Messages: 519
- Inscription: 5 Juin 2006
Salut,
Ce que tu peux faire:
- créer une iframe invisible dans laquelle s'exécute ton script PHP, comme ça tu ne quitte pas la page.
- ou à la fin de ton script tu mets la ligne:
header("location:".$_SERVER['HTTP_REFERER']); qui renverra à la page qui a appelé le script.
Ce que tu peux faire:
- créer une iframe invisible dans laquelle s'exécute ton script PHP, comme ça tu ne quitte pas la page.
- ou à la fin de ton script tu mets la ligne:
header("location:".$_SERVER['HTTP_REFERER']); qui renverra à la page qui a appelé le script.
-

Vincent1975 - WRInaute impliqué

- Messages: 516
- Inscription: 19 Oct 2006
Merci, mais comment je fais dans envoi.php pour renvoyer sur referer (je suis novice en php
)
-

biscuit - WRInaute impliqué

- Messages: 519
- Inscription: 5 Juin 2006
narayana a écrit:a première vue
si tu mets un champ hidden dans ton formulaire
par exemple ceci
- Code: Tout sélectionner
<input type="hidden" name="referer" value="<?=$_SERVER['HTTP_REFERER'];?>"/>
Lorsque tu soumets le formulaire, tu fais ton traitement dans envoi.php puis tu récupères le référer et tu rediriges directement sur la page référer.
Cela peut à priori fonctionner
là tu auras le referer de la page avant le formulaire...
-

narayana - WRInaute impliqué

- Messages: 835
- Inscription: 28 Jan 2005
si tu passes par un post
si tu passes par un get
- Code: Tout sélectionner
$referer = $_POST['referer'];
//ici ton traitement
...
//puis redirection
header("Location:".$referer);
exit();
si tu passes par un get
- Code: Tout sélectionner
$referer = $_GET['referer'];
//ici ton traitement
...
//puis redirection
header("Location:".$referer);
exit();
-

Vincent1975 - WRInaute impliqué

- Messages: 516
- Inscription: 19 Oct 2006
Désolé Biscuit, mais j'ai du mal à suivre. Pour l'instant j'ai mis la ligne Hidden dans mon formulaire, dans envoi. php j'ai juste ça pour la redirection:
<meta http-equiv="Refresh" content="5;URL=http://www.linguistics4u.eu/coursfle.htm">
Comment je peux faire pour prendre le referrer là dedans? Merci
<meta http-equiv="Refresh" content="5;URL=http://www.linguistics4u.eu/coursfle.htm">
Comment je peux faire pour prendre le referrer là dedans? Merci
-

narayana - WRInaute impliqué

- Messages: 835
- Inscription: 28 Jan 2005
biscuit a écrit:là tu auras le referer de la page avant le formulaire...
Exact autant pour moi
alors il faut utiliser le parametre REQUEST_URI
quelques variables qui pourront t'aider
http://fr3.php.net/reserved.variables
-

Vincent1975 - WRInaute impliqué

- Messages: 516
- Inscription: 19 Oct 2006
pas le temps de faire une lessive 
-

biscuit - WRInaute impliqué

- Messages: 519
- Inscription: 5 Juin 2006
P'tite récapitulation, alors...
sur les pages de ton site tu as un formulaire qui envoi vers envoi.php, dans envoi.php tu as:
sur les pages de ton site tu as un formulaire qui envoi vers envoi.php, dans envoi.php tu as:
- Code: Tout sélectionner
<?php
// Récupération des variables
$var = $_POST['var']
...
// envoi du mail
mail(...)
// retour à la page précèdente
header("location:" . $_SERVER['HTTP_REFERER']);
?>
-

julienr - WRInaute impliqué

- Messages: 913
- Inscription: 5 Aoû 2003
autre méthode tu post sur ta page courante quoi qu'il arrive avec un
dans toute tes pages ou tu as ton formulaire tu colle un include
avec un bout de code comme celui ci dedans
et ca roule...
- Code: Tout sélectionner
action=""
dans toute tes pages ou tu as ton formulaire tu colle un include
avec un bout de code comme celui ci dedans
- Code: Tout sélectionner
if( isset( $_POST) && isset($_POST['nom_du_champs']) ) ) {
// ce que tu veux faire
}
et ca roule...
Dernière édition par julienr le Jeu Nov 30, 2006 16:39, édité 1 fois.
19 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Recherche dans l'actualité WebRankInfo - 22-10-2005
- L'annuaire WebRankInfo référence les profils des réseaux sociaux - 11-01-2010
- Où placer son fichier Sitemap ? A la racine ? - 27-06-2005
- Exalead améliore son interface - 03-08-2006
- J'ai de la chance ! - 02-08-2003
- Nouvel outil : calculez la visibilité de votre site - 17-08-2002
- Google enrichit sa recherche de news - 22-07-2003
- L'assistant de recherche sur Yahoo! Search France - 06-12-2007
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


