Pb $_POST et/ou PHP

Résolu/Fermé
nab13 Messages postés 54 Date d'inscription dimanche 23 mars 2008 Statut Membre Dernière intervention 18 juillet 2016 - 21 sept. 2008 à 17:23
nab13 Messages postés 54 Date d'inscription dimanche 23 mars 2008 Statut Membre Dernière intervention 18 juillet 2016 - 23 sept. 2008 à 14:01
Bonjour,
J'ai crée un formulaire pour permettre aux utilisateurs de s'inscrire sur mon site. Le formulaire marche très bien à l'exception de deux fonctions PHP qui ne sont pas prises en compte :

Voici mon formulaire :

<form action="enreg.php" method="post">
Afin de créer un compte, merci de remplir ce formulaire. Les champs précédés d'un <b style="color:red">*</b>sont obligatoires<br><br><br>
Nom <b style="color:red">*</b><br>
<input type="text" name="nom" size="10" maxlength="15"><br><br>
Prénom <b style="color:red">*</b><br>
<input type="text" name="prenom" size="10" maxlength="20"><br><br>
Adresse <b style="color:red">*</b><br>
<input type="text" name="adresse1" size="15" maxlength="50"><br><br>
Adresse ligne 2<br>
<input type="text" name="adresse2" size="15" maxlength="50"><br><br>
Code postal <b style="color:red">*</b><br>
<input type="number" name="cp" size="5" maxlength="5"><br><br>
Ville <b style="color:red">*</b><br>
<input type="text" name="ville" size="10" maxlength="20"><br><br>
Adresse e-mail <b style="color:red">*</b><br>
<input type="text" name="mail" size="15" maxlength="30"><br><br>
Mot de passe (8 caractères alpha numériques) <b style="color:red">*</b><br>
<input type="password" name="pass" size="8" maxlength="8"><br><br>
Vérification mot de passe <b style="color:red">*</b><br>
<input type="password" name="pass2" size="8" maxlength="8"><br><br>
J'accepte les <a href="cgv.pdf">conditions d'utilisations</a><b style="color:red">*</b><br>
oui <input type="radio" name="cgv" value="oui"> non <input type="radio" name="cgv" value="non" checked><br><br>
Je souhaite de recevoir la newsletter<br>
<input type="radio" name="mail" value="oui"><br><br>
<INPUT type="submit" value="Valider">
<INPUT type="reset" value="Effacer">
</form>

et voici une partie de la page enreg.php qui traite le formulaire :

<?
session_start() ;
if ($_SESSION["robot"]=="robot"){header("location: robot.php");}



$mess="";
$mess1="";
$mess2="";
$mess3="";
$mess4="";
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$adresse1=$_POST['adresse1'];
$adresse2=$_POST['adresse2'];
$cp=$_POST['cp'];
$ville=$_POST['ville'];
$mail=$_POST['mail'];
$pass=$_POST['pass'];
$pass2=$_POST['pass2'];
$vmail =filter_input(INPUT_POST, 'mail', FILTER_VALIDATE_EMAIL);

if($_POST['mail'] == "") { $mess="E-mail manquant";header("location: reg.php?mess=$mess");}
if ($_POST['cgv'] == "non" || !isset($_POST['cgv']) ){ $mess="Vous devez accepter les conditions d'utilisation pour continuer.";header("location: reg.php?mess=$mess");}


le pb viens des lignes en gras qui sont pas prises en compte...le script continue avec des fonctions similaires qui elles sont traitées.
Ça doit être une erreur stupide mais je la vois pas...
Merci pour votre aide
A voir également:

5 réponses

Bonjour

Tes lignes en gras sont certainement exécutées.
Mais l'instruction header n'arrête pas l'exécution du script.
Si tu n'as pas de exit() après tes 'header', l'exécution du script continue. Et si plus loin tu envoies un autre header, c'est cet autre header qui sera pris en compte, et tu auras l'impression que tes lignes en gras n'auront pas été exécutées, alors qu'elles le sont.
0
autre détail : la balise d'ouverture du php c'est <?php, pas simplement <?.
Je sais, ça marche pour toi, mais c'est parce que tu ton serveur est configuré pour tolérer cette écriture afin de rester compatible avec des (très) vieux scripts. Un de ces jour il ne l'acceptera plus, tu reviendras poster une question ici. Autant t'habituer tout de suite, ça n'est pas bien difficile.
0
nab13 Messages postés 54 Date d'inscription dimanche 23 mars 2008 Statut Membre Dernière intervention 18 juillet 2016 12
23 sept. 2008 à 03:05
Aucune idée ?
-1
nab13 Messages postés 54 Date d'inscription dimanche 23 mars 2008 Statut Membre Dernière intervention 18 juillet 2016 12
23 sept. 2008 à 13:57
ok merci pour tes précieux conseils je vais essayer comme ca
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nab13 Messages postés 54 Date d'inscription dimanche 23 mars 2008 Statut Membre Dernière intervention 18 juillet 2016 12
23 sept. 2008 à 14:01
ça marche impeccable, je comprend pas pourquoi les autres header marchaient alors qu il n'y a pas de exit() mais bon je vais tout corriger (les exit() et les <?)
Encore merci pour ton aide
-1