probleme rencontrer lors de la Vérification des champs ( en php)
5 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
probleme rencontrer lors de la Vérification des champs ( en php)
Détails techniques
Version du forum : Inconnue
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Moi uniquement
Lien du forum :
Description du problème
rebonjours, je me représente, je suis étudiant en 1er année d'informatique sur Avignon ( Vaucluse). Et je vient jusqu’à vous afin si possible d'obtenir aide et explication.Mon problème actuel comme mon titre l'indique concerne une vérification de champs d'un formulaire a partir de php. Mon sujet etant:
2. Vérification des champs
On peut après envoi du formulaire vérifier la saisie des champs. On utilisera la fonction isset() (ou empty()) pour vérifier qu'une variable existe, et la fonction strpos() permettra de vérifier la présence d'un caractère particulier dans une chaîne de caractères.
A faire :
Dans la page verif.php précédemment créée, écrire le texte seulement si :
l'age est compris entre 0 et 150,
si le format du mail est : "xx@xx.xx",
si les deux mots de passes sont équivalents.
Dans le cas contraire afficher un message d'erreur.
Le formulaire que l'on devait cree etait celui-ci:
- Code:
<html>
<meta http-equiv="Content-Type" content="text/html;charset=utf8" />
<head>
<style TYPE="text/css">
h3 {
text-decoration: underline;
}
textarea{ resize:none;}
</style>
</head>
<body>
BIENVENU
<FORM action = "verif.php" method="post" OnSubmit="">
<P>
<table>
<tr>
<td><LABEL for="prenom" name="prenom"><h3>Prénom : </h3></LABEL></td>
<td> <INPUT type="text" id="prenom" name="prenom"></td>
</tr>
<tr>
<td><LABEL for="nom" name="nom"><h3>Nom : </h3></LABEL></td>
<td> <INPUT type="text" id="nom" name="nom"></td>
</tr>
<tr>
<td> <LABEL for="email" name="email"><h3>e-mail : </h3></LABEL></td>
<td> <INPUT type="text" id="email"></td>
</tr>
<tr>
<td><LABEL for="age"><h3>Age : </h3></LABEL></td>
<td> <INPUT type="text" id="age" name="age"></td>
</tr>
<tr>
<td><LABEL for="mot-de-passe"><h3>Mot de passe : </h3></LABEL></td>
<td> <INPUT type="text" id="mot-de-passe" name="mot-de-passe"></td>
</tr>
<tr>
<td><LABEL for="verification-mot-de-passe"><h3>Retapez votre mot de passe : </h3></LABEL></td>
<td> <INPUT type="text" id="verification-mot-de-passe" name="verification-mot-de-passe"></td>
</tr>
<tr>
<td><LABEL for="commentaire"><h3>commentaire : </h3></LABEL></td>
<td> <TEXTAREA type="text" rows="3" name="commentaire" placeholder="tapez votre commentaire ici"></TEXTAREA></td>
</tr><tr>
<td><h3>sexe:</h3><td> <input type="radio" id="Mr" name="sexe" value="Mr"> <label for="Mr">Homme</label>
<td></td> <td><input type="radio" id="Mme" name="sexe" value="Mme"> <label for="Mme">Femme</label><BR>
</tr><tr>
<td><h3>hobby:</h3><td>
<td></td>
</tr><tr>
<td></td>
<td><INPUT type="checkbox" name="choix[]" value="cinema"> Cinema
<INPUT type="checkbox" name="choix[]" value="Musique"> Musique</td>
</tr><tr>
<td></td>
<td><INPUT type="checkbox" name="choix[]" value="sport"> sport
<INPUT type="checkbox" name="choix[]" value="jeux-video"> jeux video</td>
</tr><tr>
<td></td>
<td><INPUT type="checkbox" name="choix[]" value="sieste"> sieste
<INPUT type="checkbox" name="choix[]" value="travail"> travail</td>
</tr><tr>
<td><h3><label for="profession">Entrez votre profession</label> </h3></td>
<td><select id="profession" name="profession" size="1">
<option value="etudiant">etudiant</option>
<option value="artisant">artisant</option>
<option value="chomeur">chomeur</option>
<option value="autre">autre</option>
</select></td>
</tr><tr>
<td><h3><label for="transport">Entrez votre moyen de transport</label> </h3></td>
<td> <select name="transport" id="transport" size="3">
<option value="train">train</option>
<option value="bus">bus</option>
<option value="voiture">voiture</option>
<option value="pietton">pietton</option>
</select></td>
</tr>
<tr>
<td><p><INPUT type="submit" value="Envoyer"></p></td>
<td> <INPUT type="reset"></p></form></td>
</tr>
</P>
</FORM>
</table>
</body>
</html>
et le formulaire de vérification que j'ai crée jusqu’à pressent ressemble a cela:
- Code:
<html>
<head>
<title>Ma page de traitement</title>
</head>
<body>
<?php
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$age = $_POST['age'];
$profession = $_POST['profession'] ;
$transport = $_POST['transport'];
$commentaire = $_POST['commentaire'];
$sexe = $_POST['sexe'] ;
$mot_de_passe = $_POST['mot-de-passe'];
$mot_de_passe = $_POST['mot-de-passe'];
$email = $_POST['email'];?>
<?php
if (empty($email))
{
echo "Pas d'email ?";
exit();
}
else
{
$point = strpos($email,".");
$aroba = strpos($email,"@");
exit();
}
if ($point=='')
{
echo " Votre email doit comporter un <b>point</b>";
exit();
}
else ($aroba=='')
{
echo "Votre email doit comporter un <b>@</b>";
exit();
}?>
<?php
if(!is_numeric($age))
{
echo "Ce champ ne doit contenir que des chiffres.";
?> <a href="tp7.php">tp7</a> <?php
exit();
}
else($age <0 && $age > 150)
{
echo "entrez un age correct</b>";
exit();
}?>
<?php
if($mot_de_passe != $verification_mot_de_passe){
echo 'les mot de passe ne correspondent pas';
?> <a href="tp7.php">tp7</a> <?php
exit();
}
else{
echo "Bonjour ";
}
if ($sexe=="Homme"){
echo"Mr ";}
else{
echo "Mme ";}
echo", $prenom $nom, vous avez $age ans et vous êtes $profession. Vous aimez ";
foreach($_POST['choix'] as $valeur){
echo "$valeur, ";
}
echo"et vous préférez vous déplacer en $transport. Nous avons bien noté vos commentaires : $commentaire."; }}
?>
</body>
</html>
mon soucis etant que je ne sais pas pourquoi, des que je le teste, il me dit cela
Parse error: syntax error, unexpected '{' in C:\xampp\htdocs\tp7\verif.php on line 35
quelqu'un pourqie t'il m'expliquer pourquoi il me dit que je n'est pas le droit de mettre un "{" apres un "else" ?
Dernière édition par joe0703 le Mar 26 Mai 2015 - 12:51, édité 4 fois
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Hum, je ne pense pas que le forum soit fait pour ça ><
Pense à bien vérifier ton code au dessus s'il n'y a pas des erreurs (par exemple un if ou un else mal fermé).
Par exemple ligne 18 tu as ceci :
L'ouverture du php n'est pas correcte , je n'ai pas regardé plus loin, mais je te conseille de prendre le temps de bien tout vérifier
Pense à bien vérifier ton code au dessus s'il n'y a pas des erreurs (par exemple un if ou un else mal fermé).
Par exemple ligne 18 tu as ceci :
- Code:
<?hp
if (empty($email))
L'ouverture du php n'est pas correcte , je n'ai pas regardé plus loin, mais je te conseille de prendre le temps de bien tout vérifier
Re: probleme rencontrer lors de la Vérification des champs ( en php)
en effet, y avais quelques erreur de balise, merci, cependant, le problème est malgres tout toujours présent donc il ne s'agit a priori pas de cela
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Ow mais je suis bête, ce n'est pas
Mais
Quand il y a un test supplémentaire, il faut penser à mettre elseif et non pas else
- Code:
else ($aroba=='')
Mais
- Code:
elseif ($aroba=='')
Quand il y a un test supplémentaire, il faut penser à mettre elseif et non pas else
Re: probleme rencontrer lors de la Vérification des champs ( en php)
meme si apres on passe a un if ?
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
cela ne change rien malheureusement, j ai meme essayer en transformant tous les if en elseif, mais cela ne change rien
- Code:
<html>
<head>
<title>Ma page de traitement</title>
</head>
<body>
<?php
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$age = $_POST['age'];
$profession = $_POST['profession'] ;
$transport = $_POST['transport'];
$commentaire = $_POST['commentaire'];
$sexe = $_POST['sexe'] ;
$mot_de_passe = $_POST['mot-de-passe'];
$mot_de_passe = $_POST['mot-de-passe'];
$email = $_POST['email'];?>
<?php
if (empty($email))
{
echo "Pas d'email ?";
exit();
}
elseif
{
$point = strpos($email,".");
$aroba = strpos($email,"@");
exit();
}
if ($point=='')
{
echo " Votre email doit comporter un <b>point</b>";
exit();
}
elseif ($aroba=='')
{
echo "Votre email doit comporter un <b>@</b>";
exit();
}?>
<?php
if(!is_numeric($age))
{
echo "Ce champ ne doit contenir que des chiffres.";
?> <a href="tp7.php">tp7</a> <?php
exit();
}
elseif($age <0 && $age > 150)
{
echo "entrez un age correct</b>";
exit();
}?>
<?php
if($mot_de_passe != $verification_mot_de_passe){
echo 'les mot de passe ne correspondent pas';
?> <a href="tp7.php">tp7</a> <?php
exit();
}
elseif{
echo "Bonjour ";
}
if ($sexe=="Homme"){
echo"Mr ";}
elseif{
echo "Mme ";}
echo", $prenom $nom, vous avez $age ans et vous êtes $profession. Vous aimez ";
foreach($_POST['choix'] as $valeur){
echo "$valeur, ";
}
echo"et vous préférez vous déplacer en $transport. Nous avons bien noté vos commentaires : $commentaire."; }}
?>
</body>
</html>
Parse error: syntax error, unexpected '{', expecting '(' in C:\xampp\htdocs\tp7\verif.php on line 24
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Il ne faut pas tous les modifier, il faut modifier seulement ceux avec une condition
Ainsi :
Mais un else sans condition reste un else sans condition.
Ici il fallait laisser le else car il n'y a pas de condition juste derrière
Eh bien, je t'invite à lire un petit cours sur le fonctionnement du if / else if / else pour mieux comprendre :p
Le cours : http://openclassrooms.com/courses/concevez-votre-site-web-avec-php-et-mysql/les-conditions-41
Une discussion entre la différence entre else et else if : http://openclassrooms.com/forum/sujet/else-et-elseif-50288
Ainsi :
- Code:
else ($aroba=='')
- Code:
elseif ($aroba=='')
Mais un else sans condition reste un else sans condition.
Ici il fallait laisser le else car il n'y a pas de condition juste derrière
- Code:
if (empty($email))
{
echo "Pas d'email ?";
exit();
}
elseif
{
$point = strpos($email,".");
$aroba = strpos($email,"@");
exit();
}
Eh bien, je t'invite à lire un petit cours sur le fonctionnement du if / else if / else pour mieux comprendre :p
Le cours : http://openclassrooms.com/courses/concevez-votre-site-web-avec-php-et-mysql/les-conditions-41
Une discussion entre la différence entre else et else if : http://openclassrooms.com/forum/sujet/else-et-elseif-50288
Re: probleme rencontrer lors de la Vérification des champs ( en php)
ok, oui j'ai fait ce tuto deja ^^
mais avec cette erreur, je suis perdu donc je demande au cas ou ^^".
donc si quelqu 'un pouvais me l'expliquer :/ je lui en serais tres reconnaisant hahahaha ^^
mais avec cette erreur, je suis perdu donc je demande au cas ou ^^".
donc si quelqu 'un pouvais me l'expliquer :/ je lui en serais tres reconnaisant hahahaha ^^
- Code:
<html>
<head>
<title>Ma page de traitement</title>
</head>
<body>
<?php
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$age = $_POST['age'];
$profession = $_POST['profession'] ;
$transport = $_POST['transport'];
$commentaire = $_POST['commentaire'];
$sexe = $_POST['sexe'] ;
$mot_de_passe = $_POST['mot-de-passe'];
$mot_de_passe = $_POST['mot-de-passe'];
$email = $_POST['email'];?>
<?php
if (empty($email))
{
echo "Pas d'email ?";
exit();
}
elseif
{
$point = strpos($email,".");
$aroba = strpos($email,"@");
exit();
}
elseif($point=='')
{
echo " Votre email doit comporter un <b>point</b>";
exit();
}
elseif ($aroba=='')
{
echo "Votre email doit comporter un <b>@</b>";
exit();
}?>
<?php
elseif(!is_numeric($age))
{
echo "Ce champ ne doit contenir que des chiffres.";
?> <a href="tp7.php">tp7</a> <?php
exit();
}
elseif($age <0 && $age > 150)
{
echo "entrez un age correct</b>";
exit();
}?>
<?php
elseif($mot_de_passe != $verification_mot_de_passe){
echo 'les mot de passe ne correspondent pas';
?> <a href="tp7.php">tp7</a> <?php
exit();
}
else{
echo "Bonjour ";
}
elseif ($sexe=="Homme"){
echo"Mr ";}
else{
echo "Mme ";}
echo", $prenom $nom, vous avez $age ans et vous êtes $profession. Vous aimez ";
foreach($_POST['choix'] as $valeur){
echo "$valeur, ";
}
echo"et vous préférez vous déplacer en $transport. Nous avons bien noté vos commentaires : $commentaire."; }}
?>
</body>
</html>
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
j'ai reussi a corriger un premier probleme, c etait du a mon
- Code:
$point = strpos($email,".");
$aroba = strpos($email,"@");
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
merci a toi nihil tu ma bien orienter vers la source du soucis
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Message par joe0703 Aujourd'hui à 0:10
Message par joe0703 Aujourd'hui à 14:56
Message par joe0703 Aujourd'hui à 15:25
Bonjour,
Merci d'éviter les doubles posts, pensez à cliquer sur le bouton dans votre dernier message pour y ajouter une information.
Je vous invite à lire :
Cordialement.
Message par joe0703 Aujourd'hui à 14:56
Message par joe0703 Aujourd'hui à 15:25
Bonjour,
Merci d'éviter les doubles posts, pensez à cliquer sur le bouton dans votre dernier message pour y ajouter une information.
Je vous invite à lire :
Cordialement.
validation d'un formulaire en php sur une seule page, en gardant les champs corect en memoire
Détails techniques
Version du forum : Inconnue
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Moi uniquement
Lien du forum :
Description du problème
rebonjours, je me représente, je suis étudiant en 1er année d'informatique sur Avignon ( Vaucluse). Et je vient jusqu’à vous afin si possible d'obtenir aide et explication.J'ai recement poster un message pour la validation d'une formulaire grace a php:
https://forum.forumactif.com/t378589-probleme-rencontrer-lors-de-la-verification-des-champs-en-php
Et je revient vers vous aujourd'hui car j'ai tenter de modifier ce code afin de tout traiter sur une seule page de cette facon :
- Code:
<?php
if (!isset($_POST["send"])){
// Si le formulaire n'a pas été envoyé, on l'affiche
?>
<html>
<meta http-equiv='Content-Type' content='text/html;charset=utf8' />
<head>
<style TYPE='text/css'>
h3 {
text-decoration: underline;
}
textarea{ resize:none;}
</style>
</head>
<body>
BIENVENU
<FORM action = '' method='POST' >
<P>
<table>
<tr>
<td><LABEL for='prenom' name='prenom'><h3>Prénom : </h3></LABEL></td>
<td> <INPUT type='text' id='prenom' name='prenom' <?PHPif (isset($_POST['prenom']))
{ ?>value="<?PHP$prenom?>"<?php;}?>
></td>
</tr>
<tr>
<td><LABEL for='nom' name='nom'><h3>Nom : </h3></LABEL></td>
<td> <INPUT type='text' id='nom' name='nom' <?PHPif (isset($_POST['nom']))
{ ?>value="<?PHP$nom?>"<?php;}?>></td>
</tr>
<tr>
<td> <LABEL for='email' name='email'><h3>e-mail : </h3></LABEL></td>
<td> <INPUT type='email' id='email' name='email' <?PHPif (isset($_POST['email']))
{ ?>value="<?PHP$email?>"<?php;}?>></td>
</tr>
<tr>
<td><LABEL for='age'><h3>Age : </h3></LABEL></td>
<td> <INPUT type='text' id='age' name='age' <?PHPif (isset($_POST['age']))
{ ?>value="<?PHP$age?>"<?php;}?>></td>
</tr>
<tr>
<td><LABEL for='mot-de-passe'><h3>Mot de passe : </h3></LABEL></td>
<td> <INPUT type='text' id='mot_de_passe' name='mot_de_passe' <?PHPif (isset($_POST['mot_de_passe']))
{ ?>value="<?PHP$mot_de_passe?>"<?php;}?>></td>
</tr>
<tr>
<td><LABEL for='verification-mot-de-passe'><h3>Retapez votre mot de passe : </h3></LABEL></td>
<td> <INPUT type='text' id='verification_mot_de_passe' name='verification_mot_de_passe' <?PHPif (isset($_POST['verification_mot_de_passe']))
{ ?>value="<?php$verification_mot_de_passe?>"<?php;}?>></td>
</tr>
<tr>
<td><LABEL for='commentaire'><h3>commentaire : </h3></LABEL></td>
<td> <TEXTAREA type='text' rows='3' name='commentaire' placeholder='tapez votre commentaire ici'><?PHPif (isset($_POST['commentaire']))
{ ?>value="<?php$commentaire?>"<?php;}?></TEXTAREA></td>
</tr><tr>
<td><h3>sexe:</h3><td> <input type='radio' id='Mr' name='sexe' value='Mr'> <label for='Mr'>Homme</label>
<td></td> <td><input type='radio' id='Mme' name='sexe' value='Mme'> <label for='Mme'>Femme</label><BR>
</tr><tr>
<td><h3>hobby:</h3><td>
<td></td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='cinema'> Cinema
<INPUT type='checkbox' name='choix[]' value='Musique'> Musique</td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='sport'> sport
<INPUT type='checkbox' name='choix[]' value='jeux-video'> jeux video</td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='sieste'> sieste
<INPUT type='checkbox' name='choix[]' value='travail'> travail</td>
</tr><tr>
<td><h3><label for='profession'>Entrez votre profession</label> </h3></td>
<td><select id='profession' name='profession' size='1'>
<option value='etudiant'>etudiant</option>
<option value='artisant'>artisant</option>
<option value='chomeur'>chomeur</option>
<option value='autre'>autre</option>
</select></td>
</tr><tr>
<td><h3><label for='transport'>Entrez votre moyen de transport</label> </h3></td>
<td> <select name='transport' id='transport' size='3'>
<option value='train'>train</option>
<option value='bus'>bus</option>
<option value='voiture'>voiture</option>
<option value='pietton'>pietton</option>
</select></td>
</tr>
<tr>
<td><p><INPUT type='submit' name="send"value='Envoyer'></p></td>
<td> <INPUT type='reset'></p></form></td>
</tr>
</P>
</FORM>
</table>
</body>
</html>
<?PhP
}
else
{ // On verifie l'envoie du prenom
if (isset($_POST['prenom']))
{
$prenom = $_POST['prenom'];
if (empty($prenom))
// si le prenom est vide on ouvre une petite fenetre et on arrete la verification
{
$message='veuiller entrez un prenom ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
}
}
// On verifie la l'envoie du nom
if (isset($_POST['nom']))
{
$nom = $_POST['nom'];
if (empty($nom))
{
// si le nom est vide on ouvre une petite fenetre et on arrete la verification
$message2='veuiller entrez un nom ';
echo '<script type="text/javascript">window.alert("'.$message2.'");</script>';
exit;
}
}
// On verifie la l'envoie de l'age
if (isset($_POST['age']))
{
$age = $_POST['age'];
if (empty($age))
// si l'age est vide on ouvre une petite fenetre et on arrete la verification
{
$message='veuiller entrez un age ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
}
if(!is_numeric($age))
{
// si se n'est pas un chiffre on envoye un message et arretons la verification
$message3='Ce champ ne doit contenir que des chiffres';
echo '<script type="text/javascript">window.alert("'.$message3.'");</script>';exit;
exit;
}
if($age <0 && $age > 150)
{
// si l'age est inferieur a 0 ou 150 ans on envoye un message et arretons le scrypte
$message2='veuiller entrez un age valide ';
echo '<script type="text/javascript">window.alert("'.$message2.'");</script>';
exit;
}
}
// On verifie la l'envoie d'une profession
if (isset($_POST['profession']))
{
$profession = $_POST['profession'] ;
if (empty($profession))
{
// si le prenom est vide on ouvre une petite fenetre et on arrete la verification
$message2='veuiller choisir une profession';
echo '<script type="text/javascript">window.alert("'.$message2.'");</script>';
exit;
}
}
// On verifie la l'envoie d'un moyen de transport
if (isset($_POST['transport']))
{
$transport = $_POST['transport'];
if (empty($transport))
{// si le prenom est vide on ouvre une petite fenetre et on arrete la verification
$message2='veuiller choisir un moyen de transport';
echo '<script type="text/javascript">window.alert("'.$message2.'");</script>';
exit;
}
}
// On verifie la l'envoie d'un commentaire
if (isset($_POST['commentaire']))
{
$commentaire = $_POST['commentaire'];
}
// On verifie la l'envoie d'un genre
if (isset($_POST['sexe']))
{
$sexe = $_POST['sexe'] ;
if (empty($sexe))
{
// si le genre n'est pas selectionner on ouvre une petite fenetre et on arrete la verification
$message='veuiller entrez un genre ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
exit;
}
}
// On verifie la l'envoie d'un mot de passe
if (isset($_POST['mot_de_passe']))
{
$mot_de_passe = $_POST['mot_de_passe'];
if (empty($mot_de_passe))
{
// si le mot de passe est vide on ouvre une petite fenetre et on arrete la verification
$message='veuiller entrez un mot de passe ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
exit;
}
}
// On verifie la l'envoie d'une confirmation de mot de passe
if (isset($_POST['verification_mot_de_passe']))
{
$verification_mot_de_passe = $_POST['verification_mot_de_passe'];
if (empty($verification_mot_de_passe))
{
// si la verification est vide on ouvre une petite fenetre et on arrete la verification
$message='veuiller entrez un mot de passe a nouveau ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
exit;
}
if($mot_de_passe != $verification_mot_de_passe)
{
// si le mot de passe est different de la verification on envoye un message d'erreur et on arrete le scrypte
echo 'les mot de passe ne correspondent pas';
exit;
}
}
// On verifie la l'envoie d'un email
if (isset($_POST['email']))
{
$email = $_POST['email'];
$point = strpos($email,".");
$aroba = strpos($email,"@");
if (empty($email))
{
// si l'email est vide on ouvre une petite fenetre et on arrete la verification
$message='veuiller entrez un email ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
exit;
}
if($point=='')
{
// si 'email ne comporte pas de point on envoie un message d'erreur et on arrete le scrypt
echo " Votre email doit comporter un <b>point</b>";
exit;
}
if ($aroba=='')
{
// si 'email ne comporte pas d'@ on envoie un message d'erreur et on arrete le scrypt
echo "Votre email doit comporter un <b>@</b>";
exit;
}
}
// On verifie la l'envoie d'un hobby
if (isset($POST['choix']))
{
$choix=$_POST[$choix];
if (empty($choix))
{
// si le prenom est vide on ouvre une petite fenetre et on arrete la verification
$message='veuiller entrez un hobby ';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
exit;
}
}
else{
// si la verification est corecte on envoye un message
$message='bonjours if ($sexe=="Mr")
{
echo"Mr ";
}
else
{
echo "Mme ";}
, $prenom $nom, votre inscription a etait prise en compte';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';exit;
}
}
?>
Le soucis de mon code étant que si la vérification se fait belle et bien, une fois mon pop up afficher, la page devient toute blanche au lieu de re-afficher le formulaire comprenant les champs valide. quelqu'un pourait il m'indiquer la voie a suivre afin de corriger mon erreur ? merci d'avance
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Bonjour,
Il aurait été plus simple de compléter votre sujet précédent plutôt que d'ouvrir un nouveau sujet pour contrecarrer le message de modération.
Techniquement, le forum de support est dédié aux forums hébergés par Fa ; pas pour une aide aux devoirs.
Il aurait été plus simple de compléter votre sujet précédent plutôt que d'ouvrir un nouveau sujet pour contrecarrer le message de modération.
Techniquement, le forum de support est dédié aux forums hébergés par Fa ; pas pour une aide aux devoirs.
Re: probleme rencontrer lors de la Vérification des champs ( en php)
c était pas pour contrecarrer la modération , mais au contraire pour la respecter, vu que sur le règlement, il est indiquer qu'un sujet ne doit n’être dédier qu'a une seule question. si j'ai crée ce nouveau sujet c 'était justement dans le but de respecter le poste de modération que l on ma envoyer sur le topic précédent. Je vous pris de bien vouloir m’excuser, si mon action passe pour vouloir outrepasser la modération
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Bonjour,joe0703 a écrit:c était pas pour contrecarrer la modération , mais au contraire pour la respecter, vu que sur le règlement, il est indiquer qu'un sujet ne doit n’être dédier qu'a une seule question. si j'ai crée ce nouveau sujet c 'était justement dans le but de respecter le poste de modération que l on ma envoyer sur le topic précédent. Je vous pris de bien vouloir m’excuser, si mon action passe pour vouloir outrepasser la modération
La remarque d'éditer votre dernier message pour y ajouter une information, est dans le cas où il n'y a pas 24 h d'écart depuis votre dernier message.
Ce sujet est fusionné avec celui déjà en cours.
Cordialement.
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Bonjour,
le fait est que ce forum n'est pas destiné à fournir une telle aide en principe (PHP).
Quelques petits conseils et réflexions malgré tout:
-Pas de doctype, pour html5 choisissez:
-Vous générez du javascript en dehors du document, de plus, inutile de le générer à l'envoi à moins que le visiteur ait une DeLorean sous la main (le p'tit veinard).
-Javascript est-il une obligation ?
-Etes-vous limité aux tests via if ?
-préférez trim+empty à isset dans votre cas pour preuve:
-Avez-vous déjà vu l'utilisation de la fonction "header" ?
-Concernant le fonctionnement, le formulaire fait auparavant doit voir le formulaire pointer sur le script "verif.php" selon la consigne de votre devoir en tout cas, vous dites vouloir tout faire sur la même page, il vous faut donc cibler cette même page:
-Purement visuel mais préférez l'emploi des minuscules à moins d'une signification particulière dans votre code et corrigez les fautes d'orthographe, on en fait tous, mais là ça pique les yeux.
le fait est que ce forum n'est pas destiné à fournir une telle aide en principe (PHP).
Quelques petits conseils et réflexions malgré tout:
-Pas de doctype, pour html5 choisissez:
- Code:
<!DOCTYPE html>
-Vous générez du javascript en dehors du document, de plus, inutile de le générer à l'envoi à moins que le visiteur ait une DeLorean sous la main (le p'tit veinard).
-Javascript est-il une obligation ?
-Etes-vous limité aux tests via if ?
-préférez trim+empty à isset dans votre cas pour preuve:
- Code:
$espace_tabulation=" ";
/*trim+isset renverra true car $espace_tabulation est définie même si elle vaut "" ou null*/
var_dump(isset(trim($espace_tabulation)));
/*trim+empty renverra true car $espace_tabulation est vide*/
var_dump(empty(trim($espace_tabulation)));
/*pour vérifier la validité de $espace_tabulation, renvoie true si contient autre chose que des espaces, tabulations etc...*/
var_dump(!empty(trim($espace_tabulation)));
- Code:
echo !empty(trim($_POST['nom']))?'champ_valide':'champ_non_valide';
-Avez-vous déjà vu l'utilisation de la fonction "header" ?
-Concernant le fonctionnement, le formulaire fait auparavant doit voir le formulaire pointer sur le script "verif.php" selon la consigne de votre devoir en tout cas, vous dites vouloir tout faire sur la même page, il vous faut donc cibler cette même page:
- Code:
...action="<?php echo $_SERVER['PHP_SELF'];?>"...
-Purement visuel mais préférez l'emploi des minuscules à moins d'une signification particulière dans votre code et corrigez les fautes d'orthographe, on en fait tous, mais là ça pique les yeux.
no_way- Membre actif
- Messages : 2214
Inscrit(e) le : 26/03/2010
Re: probleme rencontrer lors de la Vérification des champs ( en php)
2. Vérification des champs
On peut après envoi du formulaire vérifier la saisie des champs. On utilisera la fonction isset() (ou empty()) pour vérifier qu'une variable existe, et la fonction strpos() permettra de vérifier la présence d'un caractère particulier dans une chaîne de caractères.
A faire :
Dans la page verif.php précédemment créée, écrire le texte seulement si :
l'age est compris entre 0 et 150,
si le format du mail est : "xx@xx.xx",
si les deux mots de passes sont équivalents.
Dans le cas contraire afficher un message d'erreur.
3. Prise en compte des corrections
Une page PHP peut tout à fait se rappeler elle même, et ainsi prendre en compte les corrections éventuelles effectuées par un utilisateur. On peut alors transmettre les variables non corrigées en champs cachés.
Les variables peuvent être retransmises à l'aide de champs cachés.
A faire :
Reprendre la page verif.php et l'adapter en re-proposant un formulaire pour saisir à nouveau les champs qui ne convenaient pas, si il y en avait. Ce formulaire rappellera la même page, en lui passant toutes les variables de sa connaissance.
L'utilisateur pourra corriger autant de fois qu'il le souhaite jusqu'à voir enfin le texte de validation apparaître.
j'ai penser que le plus simple pour répondre a votre question est de vous montrer le sujet ^^"
-Pour ce qui est de vos conseil,
en effet, j'oublie tous le temps de spécifier "doctype"
-pour le javascrypte en effet cela n'est pas ideal, j'ai corriger cela ( ou dumoin j'ai essayer) dans le nouveau codage que je vient d'effectuer( transmis plus bas.
-pour ce qui est des variable, non je ne suis pas limité au if, il s'agit simplement que c'est la seul méthode que je connaisse, car nos enseignant nous laisse nous débrouiller seul sans réel suivie et conseil.
-pour le inset, le soucis, est que si je ne définie pas inset, mon code php s'affiche quand j'ouvre ma page php..... J'ai néanmoins tenter une approche avec trim dans mon nouveau codage, meme si je ne connais pas réellement ce code, que je vient de découvrir grâce a vous. pour le fait de retaper, justement comme vous avais du le lire dans mon sujet, cela doit se faire a partir de php et là et justement mon soucis, car je n’arrive pas a renvoyer mes champs correct.
- Non malheureusement nous n'avons pas vu le header, mais je vient également de le rechercher après lecture de votre message et j'ai essayer de l'utiliser dans mon nouveau code meme si je ne suis pas sur d'avoir réellement compris son utilité.
pour mon nouveau code, je suis parti de ce code trouver sur une tuto internet
- Code:
<?php
$nom = '';
$erreur = '';
if( isset( $_POST['nom'] ) ) {
$nom = trim( $_POST['nom'] );
if( preg_match('`^[- a-zàâäéèêëïîôöùûü\']{2,}$`i', $nom ) ) {
insèreEnBase( $nom );
header('location: merci.php' );
exit;
} else {
$erreur = 'Votre nom ne peut pas contenir de caractères spéciaux !';
}
}
?><html>
<head>
<title>Formulaire</title>
</head>
<body>
<form action="Formulaire.php" method="post">
<p>Entrez votre nom : <input type="text" name="nom" value="<?php echo htmlspecialchars( $nom ) ?>"/></p>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?>
<p><input type="submit" value=" OK " /></p>
</form>
</body>
</html>
et j'ai essayer de l'adapter a mon code, ce qui me donne si ma logique est bonne
- Code:
<?php
if (!isset($_POST["send"])){
// Si le formulaire n'a pas été envoyé, on l'affiche
?>
<!DOCTYPE html>
<html>
<meta http-equiv='Content-Type' content='text/html;charset=utf8' />
<head>
<style TYPE='text/css'>
h3 {
text-decoration: underline;
}
textarea{ resize:none;}
</style>
</head>
<body>
BIENVENU
<FORM action = '<?php echo $_SERVER['PHP_SELF'];?>' method='POST' >
<P>
<table>
<tr>
<td><LABEL for='prenom' name='prenom'><h3>Prénom : </h3></LABEL></td>
<td> <INPUT type='text' id='prenom' name='prenom' value="<?php echo htmlspecialchars( $prenom ) ?>"/></td>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?>
</tr>
<tr>
<td><LABEL for='nom' name='nom'><h3>Nom : </h3></LABEL></td>
<td> <INPUT type='text' id='nom' name='nom' value="<?php echo htmlspecialchars( $nom ) ?>" ></td>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?>
</tr>
<tr>
<td> <LABEL for='email' name='email'><h3>e-mail : </h3></LABEL></td>
<td> <INPUT type='email' id='email' name='email' value="<?php echo htmlspecialchars( $email ) ?>"/></td>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?> ></td>
</tr>
<tr>
<td><LABEL for='age'><h3>Age : </h3></LABEL></td>
<td> <INPUT type='text' id='age' name='age' ></td>
</tr>
<tr>
<td><LABEL for='mot-de-passe'><h3>Mot de passe : </h3></LABEL></td>
<td> <INPUT type='text' id='mot_de_passe' name='mot_de_passe' value="<?php echo htmlspecialchars( $mot_de_passe ) ?>"/></td>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?> ></td>
</tr>
<tr>
<td><LABEL for='verification-mot-de-passe'><h3>Retapez votre mot de passe : </h3></LABEL></td>
<td> <INPUT type='text' id='verification_mot_de_passe' name='verification_mot_de_passe' value="<?php echo htmlspecialchars( $verification-mot-de-passe ) ?>"/></td>
<?php if( ! empty( $erreur ) ) echo ' <p>', $erreur, '</p>' ?> ></td>
</tr>
<tr>
<td><LABEL for='commentaire'><h3>commentaire : </h3></LABEL></td>
<td> <TEXTAREA type='text' rows='3' name='commentaire' placeholder='tapez votre commentaire ici'></TEXTAREA></td>
</tr><tr>
<td><h3>sexe:</h3><td> <input type='radio' id='Mr' name='sexe' value='Mr'> <label for='Mr'>Homme</label>
<td></td> <td><input type='radio' id='Mme' name='sexe' value='Mme'> <label for='Mme'>Femme</label><BR>
</tr><tr>
<td><h3>hobby:</h3><td>
<td></td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='cinema'> Cinema
<INPUT type='checkbox' name='choix[]' value='Musique'> Musique</td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='sport'> sport
<INPUT type='checkbox' name='choix[]' value='jeux-video'> jeux video</td>
</tr><tr>
<td></td>
<td><INPUT type='checkbox' name='choix[]' value='sieste'> sieste
<INPUT type='checkbox' name='choix[]' value='travail'> travail</td>
</tr><tr>
<td><h3><label for='profession'>Entrez votre profession</label> </h3></td>
<td><select id='profession' name='profession' size='1'>
<option value='etudiant'>etudiant</option>
<option value='artisant'>artisant</option>
<option value='chomeur'>chomeur</option>
<option value='autre'>autre</option>
</select></td>
</tr><tr>
<td><h3><label for='transport'>Entrez votre moyen de transport</label> </h3></td>
<td> <select name='transport' id='transport' size='3'>
<option value='train'>train</option>
<option value='bus'>bus</option>
<option value='voiture'>voiture</option>
<option value='pietton'>pietton</option>
</select></td>
</tr>
<tr>
<td><p><INPUT type='submit' name="send"value='Envoyer'></p></td>
<td> <INPUT type='reset'></p></td>
</tr>
</P>
</FORM>
</table>
</body>
</html>
<?PhP
}
else
{
$prenom = '';
$nom = '';
$age = '';
$profession= '';
$choix = '';
$email = '';
$mot_de_passe = '';
$verification_mot_de_passe = '';
$commentaire='';
$transport='';
$sexe='';
$erreur = '';
// On verifie la l'envoie du prenom
if (isset($_POST['prenom']))
{
$prenom = trim( $_POST['prenom'] );
if(empty ($prenom))
{
$erreur = 'entrez un prenom!';
exit;
}
elseif( preg_match('`^[- a-zàâäéèêëïîôöùûü\']{2,}$`i', $prenom ) )
{
insèreEnBase( $prenom );
header('location: merci.php' );
exit;
} else
{
$erreur = 'Votre prenom ne peut pas contenir de caractères spéciaux !';
}
}
// On verifie la l'envoie du nom
if( isset( $_POST['nom'] ) )
{
$nom = trim( $_POST['nom'] );
if(empty ($nom))
{
$erreur = 'entrez un nom!';
exit;
}
elseif( preg_match('`^[- a-zàâäéèêëïîôöùûü\']{2,}$`i', $nom ) )
{
insèreEnBase( $nom );
header('location: merci.php' );
exit;
} else
{
$erreur = 'Votre nom ne peut pas contenir de caractères spéciaux !';
}
}
// On verifie la l'envoie de l'age
if (isset($_POST['age']))
{
$age = trim( $_POST['age'] );
if (empty($age))
// si l'age est vide on defini l'erreur et on arrete la verification
{
$erreur ='veuiller entrez un age ';
exit;
}
elseif(!is_numeric($age))
{
// si se n'est pas un chiffre on envoye un erreur et arretons la verification
$erreur3='Ce champ ne doit contenir que des chiffres';
exit;
}
elseif($age <0 && $age > 150)
{
// si l'age est inferieur a 0 ou 150 ans on envoye un erreur et arretons le scrypte
$erreur2='veuiller entrez un age valide ';
exit;
}
}
// On verifie la l'envoie d'une profession
if (isset($_POST['profession']))
{
$profession = trim( $_POST['profession'] );
if (empty($profession))
{
$erreur='veuiller choisir une profession';
exit;
}
}
// On verifie la l'envoie d'un moyen de transport
if (isset($_POST['transport']))
{
$transport = trim ($_POST['transport']);
if (empty($transport))
{// si le prenom est vide on defini l'erreur et on arrete la verification
$erreur='veuiller choisir un moyen de transport';
exit;
}
}
// On verifie la l'envoie d'un commentaire
if (isset($_POST['commentaire']))
{
$commentaire = trim($_POST['commentaire']);
}
// On verifie la l'envoie d'un genre
if (isset($_POST['sexe']))
{
$sexe = $_POST['sexe'] ;
if (empty($sexe))
{
// si le genre n'est pas selectionner on defini l'erreur et on arrete la verification
$erreur='veuiller entrez un genre ';
exit;
}
}
// On verifie la l'envoie d'un mot de passe
if (isset($_POST['mot_de_passe']))
{
$mot_de_passe = $_POST['mot_de_passe'];
if (empty($mot_de_passe))
{
// si le mot de passe est vide on ouvre defini l'erreur et on arrete la verification
$erreur='veuiller entrez un mot de passe ';
exit;
}
}
// On verifie la l'envoie d'une confirmation de mot de passe
if (isset($_POST['verification_mot_de_passe']))
{
$verification_mot_de_passe = $_POST['verification_mot_de_passe'];
if (empty($verification_mot_de_passe))
{
// si la verification est vide on defini l'erreur et on arrete la verification
$erreur='veuiller entrez un mot de passe a nouveau ';
exit;
}
if($mot_de_passe != $verification_mot_de_passe)
{
// si le mot de passe est different de la verification on envoye un erreur d'erreur et on arrete le scrypte
$erreur= 'les mot de passe ne correspondent pas';
exit;
}
}
// On verifie la l'envoie d'un email
if (isset($_POST['email']))
{
$email = $_POST['email'];
$point = strpos($email,".");
$aroba = strpos($email,"@");
if (empty($email))
{
// si l'email est vide on defini l'erreur et on arrete la verification
$erreur='veuiller entrez un email ';
exit;
}
if($point=='')
{
// si 'email ne comporte pas de point on envoie un message d'erreur et on arrete le scrypt
$erreur= " Votre email doit comporter un <b>point</b>";
exit;
}
if ($aroba=='')
{
// si 'email ne comporte pas d'@ on envoie un message d'erreur et on arrete le scrypt
$erreur="Votre email doit comporter un <b>@</b>";
exit;
}
}
// On verifie la l'envoie d'un hobby
if (isset($POST['choix']))
{
$choix=$_POST[$choix];
if (empty($choix))
{
// si le prenom est vide on defini l'erreur et on arrete la verification
$erreur='veuiller entrez un hobby ';
exit;
}
}
?>
Mais malgres cela, je me retrouve encor avec le meme soucis, lors de la 1er ouverture de ma page, mes imput ne sont pas vierge, une erreur disans que mes variable $ initialiser n'on pas de chemin, et une fois l'envoye du formulaire, ma page devient vierge :/ .
joe0703- Nouveau membre
- Messages : 21
Inscrit(e) le : 02/05/2015
Re: probleme rencontrer lors de la Vérification des champs ( en php)
Je vois, je vous contacterai par MP pour vous montrer ce que j'ai fait et voir si j'ai bien cerné ce qui est demandé
Si oui je vous fournirai le code source.
@ bientôt.
Si oui je vous fournirai le code source.
@ bientôt.
no_way- Membre actif
- Messages : 2214
Inscrit(e) le : 26/03/2010
Sujets similaires
» Problème lors d'une vérification d'IP d'un membre
» Probleme Champs de Profil
» Profils : titres des champs de saise invisibles lors du survol
» Problème vérification et connexion à mon forum.
» Problème d'inscription [Absence de vérification et non finalisation de l'inscription]
» Probleme Champs de Profil
» Profils : titres des champs de saise invisibles lors du survol
» Problème vérification et connexion à mon forum.
» Problème d'inscription [Absence de vérification et non finalisation de l'inscription]
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum