Hello tout le monde !

Voilà, j'ai un petit souci avec un formulaire ! En fait, quand j'appuie sur le bouton d'envoi (submit), le script recharge la page et est censé m'indiquer "votre message a été envoyé" mais au lieu de ça, il me renvoie vers une autre page !

Je m'explique : j'ai une page 'index.php' dans laquelle je charge mes contenus au fil de la navigation (le formulaire fait partie de ces contenus). L'adresse de mes pages sont donc toutes les mêmes : 'http://www.monsite.com/index.php'. J'utilise cependant la méthode 'GET', l'URL de mes pages change donc d'aspect en fonction du contenu chargé, genre : 'http://www.monsite.com/index.php?contenu=produits'.

Bon, je ne m'y connais pas en php, ou très peu, je l'utilise uniquement pour créer une structure de site plus simple à modifier par la suite s'il y a des modifs à apporter. Donc j'ai simplement créer un formulaire via un éditeur online, je l'ai inséré dans ma page.

L'url de la page où se situe mon formulaire est de ce type :

'http://www.monsite.com/index.php?contenu=contact'

Quand je clique sur le bouton d'envoi, le script devrait idéalement recharger cet url avec, dans le corps de ma page, un message indiquant "Votre message a bien été envoyé!".

Au lieu de ça, c'est la page d'index qui est chargée, c'est à dire le chemin de la page sans les variables :

'http://www.monsite.com/index.php'

Du coup, quand je clique sur mon bouton submit, je tombe juste après sur la page d'accueil, c'est à dire le contenu par défaut de la page d'index.

Donc, ma question : comment fonctionne la méthode submit ? Pourquoi n'est-ce pas l'URL + les variables passées en GET qui sont rechargés ?

Comment dire au script de recharger ceci : 'http://www.monsite.com/index.php?contenu=contact' plutôt que ça : 'http://www.monsite.com/index.php' ?

Si ça peut aider, voici la partie 'formulaire' chargée dans ma page d'index :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
<?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
// Ne rien modifier ci-dessous si vous n’êtes pas certain de ce que vous faites !
if(isset($_POST['submit'])){
	$erreur="";
	// Nettoyage des entrées
	while(list($var,$val)=each($_POST)){
	if(!is_array($val)){
		$$var=strip_tags($val);
	}else{
		while(list($arvar,$arval)=each($val)){
				$$var[$arvar]=strip_tags($arval);
			}
		}
	}
	// Formatage des entrées
	$f_1=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_1)));
	$f_2=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_2)));
	$f_3=strip_tags(trim($f_3));
	$f_4=trim(eregi_replace("[^0-9\ +]", "", $f_4));
	// Verification des champs
	if(strlen($f_1)<2){
		$erreur.="<li><span class='txterror'>Le champ &laquo; Nom &raquo; est vide ou incomplet.</span>";
		$errf_1=1;
	}
	if(strlen($f_2)<2){
		$erreur.="<li><span class='txterror'>Le champ &laquo; Prénom &raquo; est vide ou incomplet.</span>";
		$errf_2=1;
	}
	if(strlen($f_3)<2){
		$erreur.="<li><span class='txterror'>Le champ &laquo; Adresse e-mail &raquo; est vide ou incomplet.</span>";
		$errf_3=1;
	}else{
		if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+'.
		'@'.
		'[-!#$%&\'*+\/0-9=?A-Z^_`a-z{|}~]+\.'.
		'[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+$',
		$f_3)){
			$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
			$errf_3=1;
		}
	}
	if(strlen($f_5)<2){
		$erreur.="<li><span class='txterror'>Le champ &laquo; Message &raquo; est vide ou incomplet.</span>";
		$errf_5=1;
	}
	if($erreur==""){
		// Création du message
		$titre="Message de votre site";
		$tete="From:Site@Studiocreapix.com\n";
		$corps.="Nom : ".$f_1."\n";
		$corps.="Prénom : ".$f_2."\n";
		$corps.="Adresse e-mail : ".$f_3."\n";
		$corps.="Téléphone : ".$f_4."\n";
		$corps.="Intitulé message : ".$type."\n";
		$corps.="Message : ".$f_5."\n";
		//condition if type==$bug ajoutée par moi-même
		if($type=="bug"){
			if(mail("guillaume.mory@gmail.com", $titre, stripslashes($corps), $tete)){
				$ok_mail="true";
			}else{
				$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
			}
		}else{
			if(mail("gizmil@hotmail.com", $titre, stripslashes($corps), $tete)){
				$ok_mail="true";
			}else{
				$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
			}
		}
	}
}
?>
<div id="contenerPage">
	<div class="mainblock_top"></div>
	<div class="mainblock">
		<div id="contenerText">
			<div class="padBot40"></div>
			<h1 class="darkGreenText" title="Formulaire de Contact">CONTACTEZ-NOUS</h1>
			<div class="buttonsText padTopA">
				<a href="index.php?contenu=contact&type=contact" title="Découvrez nos produits">PRODUITS</a> | <a href="index.php?contenu=contact&type=devis" title="Nous demander un devis">DEVIS</a> | <a href="index.php?contenu=accueil" title="Aller à l'accueil">ACCUEIL</a>
			</div>
			<div class="horizontalLineTop"></div>
			<span class="greyText fontSize10">Changer l'intitulé du message (ceci réinitialise les champs texte) : <a class="linkSize10Grey" title="Nous contacter" href="index.php?contenu=contact&type=contact">CONTACT</a> | <a class="linkSize10Grey" title="Nous signaler un bug constaté sur le site" href="index.php?contenu=contact&type=bug">SIGNALER UN BUG</a></span>
			<div class="horizontalLineTop padBot30"></div>
			<h2 class="fontSize12 whiteText" title="Service1">
			<?
			switch ($type) {
				case "contact" : print("
				Nous contacter
				");break;
				case "bug" : print("
				Signaler un bug ou un problème de navigation
				");break;
			}
			?>
			</h2>
			<div class="horizontalLineTop padBot20"></div>
			<?
			switch ($type) {
				case "contact" : print("
				<p class='generalText padBot20'>Vous aimeriez nous transmettre un message ? Alors remplissez le formulaire ci-dessous pour nous en faire part, nous y répondrons dans les plus brefs délais !</p>
				");break;
				case "bug" : print("
				<p class='generalText padBot20'>Nous faisons du mieux que nous pouvons pour que ce site vous soit agréâble à parcourir. Si vous avez constaté un bug ou un problème dans la navigation de celui-ci, quel qu'il soit : un affichage anormal, un libellé erroné, un problème de chargement d'images ou encore une incompréhension dans la manière d'utiliser le site,... n'hésitez pas à nous faire part de vos commentaires.</p>
				");break;
			}
			?>
			<div class="horizontalLineTop padBot20"></div>
			<? if($ok_mail=="true"){ ?>
					<p class='generalText'>
						Le message ci-dessous nous a bien été transmis, et nous vous en remercions.
					</p>
					<?echo nl2br(stripslashes($corps));?>
					<p class='generalText'>
						Nous allons y donner suite dans les meilleurs délais.<br>
						A bientôt.
					</p>
			<? }else{ ?>
				<form action='<? echo $PHP_SELF ?>' method='post' name='Form'>
						<? if($erreur){ ?>
							ERREUR, votre message n'a pas été transmis
							<ul><?echo$erreur?></ul>
						<?}?>
						<table id='formularyTable' class='generalText'>
							<caption>Les champs marqués en rouge sont obligatoires !</caption>
							<tr>
								<td>
									<span class='brightRedText'>Nom :</span><br /><br />
									<input type='text' <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' />
								</td>
								<td>
									<span class='brightRedText'>Prénom :</span><br /><br />
									<input type='text' <?if($errf_2==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_2' value='<?echo stripslashes($f_2);?>' />
								</td>
							</tr>
							<tr>
								<td>
									<span class='brightRedText'>Adresse e-mail :</span><br /><br />
									<input type='text' <?if($errf_3==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_3' value='<?echo stripslashes($f_3);?>' />
								</td>
								<td>
									<span>Téléphone :</span><br /><br />
									<input type='text' <?if($errf_4==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_4' value='<?echo stripslashes($f_4);?>' />
								</td>
							</tr>
							<tr>
								<td colspan='2'>
									<span class='brightRedText'>Message :</span><br /><br />
									<textarea <?if($errf_5==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_5' rows='6' cols='40'><?echo$f_5?></textarea>
								</td>
							</tr>
							<tr>
								<td colspan='2'>
									<input type='submit' name='submit' value='Envoyer' />
								</td>
							</tr>
						</table>
				</form>
			<? } ?>
			<div class="horizontalLineBottom padTop20"></div>
			<span class="greyText fontSize10">Changer l'intitulé du message (ceci réinitialise les champs texte) : <a class="linkSize10Grey" title="Nous contacter" href="index.php?contenu=contact&type=contact">CONTACT</a> | <a class="linkSize10Grey" title="Nous signaler un bug constaté sur le site" href="index.php?contenu=contact&type=bug">SIGNALER UN BUG</a></span>
			<div class="horizontalLineTop"></div>
			<div class="buttonsText">
				<a href="index.php?contenu=contact&type=contact" title="Découvrez nos produits">PRODUITS</a> | <a href="index.php?contenu=contact&type=devis" title="Nous demander un devis">DEVIS</a> | <a href="index.php?contenu=accueil" title="Aller à l'accueil">ACCUEIL</a>
			</div>
			<div class="padBot40"></div>
		</div>
	</div>
	<div class="mainblock_bottom"></div>
</div>
Merci pour votre aide !