Garder les informations bonnes dans le formulaire après controle
Résolu/Fermé
Bryant
-
13 déc. 2013 à 09:19
kherox Messages postés 131 Date d'inscription dimanche 13 janvier 2013 Statut Membre Dernière intervention 17 octobre 2015 - 17 déc. 2013 à 18:06
kherox Messages postés 131 Date d'inscription dimanche 13 janvier 2013 Statut Membre Dernière intervention 17 octobre 2015 - 17 déc. 2013 à 18:06
A voir également:
- Garder les informations bonnes dans le formulaire après controle
- Entrer les informations d'identification reseau - Guide
- Formulaire de réclamation facebook - Guide
- Comment garder le 0 devant les chiffres sur excel - Guide
- Controle parental pc - Guide
- Le formulaire rempli - Guide
11 réponses
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
Modifié par pijaku le 13/12/2013 à 09:34
Modifié par pijaku le 13/12/2013 à 09:34
tu creer une session d 'abord et lorsque le users valide tu recupere les donnees et tu les mets dans la session, comme xa quand tu reviens en car d 'erreur , tu verifie si la session n'est pas vide et tu l'affiche comme ca par exemple :
fichier form.php
fichier form_traitement.php
quand tu faite tes verification , une fois que il ya une erreur tu vide la session correspondante en faissant $_SESSION['pseudo'] = ""; comme xa a ton retour sur la page du formulaire ce sera les champs qui auront des erreurs qui seront vide .
test et informe
fichier form.php
<?php session_start(); ?> <form action="form_traitement.php" action="post"> <input type="text" name="pseudo" value="<?php echo isset($_SESSION['pseudo'])? $_SESSION['pseudo'] : " "?> placeholder="pseudo"> <form>
fichier form_traitement.php
<?php session_start(); if(isset($_POST) && !empty($_POST)){ $_SESSION['pseudo'] = $_POST['pseudo'] } ?>
quand tu faite tes verification , une fois que il ya une erreur tu vide la session correspondante en faissant $_SESSION['pseudo'] = ""; comme xa a ton retour sur la page du formulaire ce sera les champs qui auront des erreurs qui seront vide .
test et informe
Bonjour Bryant,
S'il s'agit en faite de remettre les données stockées en session dans votre formulaire, vous pouvez faire comme ça pour les balises de type <input />:
Appliquez ces exemples dans vos balises de formulaire, ça devrait le faire ! :)
N'oubliez pas de remplir les variables de session pour pouvoir effectuer ces tests.
Était-ce bien cela que vous vouliez savoir ? :)
Cordialement.
S'il s'agit en faite de remettre les données stockées en session dans votre formulaire, vous pouvez faire comme ça pour les balises de type <input />:
Pour les balises <option></option> dans les balises <select></select>:
<input value="<?php if (isset($_SESSION['Pseudo'])) echo $_SESSION['Pseudo']; else echo ''; ?>" />
<select style="float:right" name="Statut">
<option name="Statut" value="Administrateur" <?php if (isset($_SESSION['Statut']) && $_SESSION['Statut'] == "Administrateur") echo "selected='selected'"; else echo ""; ?> >Administrateur</option><br />
<option name="Statut" value="Membre" <?php if (isset($_SESSION['Statut']) && $_SESSION['Statut'] == "Membre") echo "selected='selected'"; else echo ""; ?> >Membre</option><br />
</select>
Appliquez ces exemples dans vos balises de formulaire, ça devrait le faire ! :)
N'oubliez pas de remplir les variables de session pour pouvoir effectuer ces tests.
Était-ce bien cela que vous vouliez savoir ? :)
Cordialement.
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
Modifié par pijaku le 13/12/2013 à 10:01
Modifié par pijaku le 13/12/2013 à 10:01
donne ta page de traitement stp; pour voir comment tu affecte les varaibles a la session
dans ton post tu n'utlise pas les bon name je crois regarde ce :
le name du input c'est : "Pseudo" et la session du appelle $_SESSION['pseudo_info']
donc donne le code du fichier :verif_inscription.php et n 'oublie pas de passe "" post" en "POST" ce la peut cuasez quelque probleme.
j 'attends
dans ton post tu n'utlise pas les bon name je crois regarde ce :
<?php <input type="text" name="Pseudo" id="Pseudo" size="30" value="<?php echo isset($_SESSION['pseudo_info'])? $_SESSION['pseudo_info'] : " "?>" placeholder="Pseudo" /> ?>
le name du input c'est : "Pseudo" et la session du appelle $_SESSION['pseudo_info']
donc donne le code du fichier :verif_inscription.php et n 'oublie pas de passe "" post" en "POST" ce la peut cuasez quelque probleme.
j 'attends
Oui mais je l'appelle differemment dans ma page de vérif !
Voici le code :
Merci
Voici le code :
<body bgcolor="#64748B"> <?php include('fonctions.php'); //connection au serveur $cnx = mysql_connect( "localhost", "root", "azerty" ); //sélection de la base de données: $db = mysql_select_db( "azerty" ); $_SESSION['erreurs'] = 0; //Pseudo if(isset($_POST['Pseudo'])) { $pseudo = trim($_POST['Pseudo']); $pseudo_result = checkpseudo($pseudo); if($pseudo_result == 'tooshort') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop court, vous devez en choisir un plus long (minimum 3 caractères).</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'toolong') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop long, vous devez en choisir un plus court (maximum 32 caractères).</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'exists') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est déjà pris, choisissez-en un autre.</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'ok') { $_SESSION['pseudo_info'] = ''; $_SESSION['form_pseudo'] = $pseudo; } else if($pseudo_result == 'empty') { $_SESSION['pseudo_info'] = '<span class="erreur">Vous n\'avez pas entré de pseudo.</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } } else { header('Location: index.php'); exit(); } //Mot de passe if(isset($_POST['Mdp'])) { $mdp = trim($_POST['Mdp']); $mdp_result = checkmdp($mdp, ''); if($mdp_result == 'tooshort') { $_SESSION['mdp_info'] = '<span class="erreur">Le mot de passe entré est trop court, changez-en pour un plus long (minimum 4 caractères).</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'toolong') { $_SESSION['mdp_info'] = '<span class="erreur">Le mot de passe entré est trop long, changez-en pour un plus court. (maximum 50 caractères)</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'nofigure') { $_SESSION['mdp_info'] = '<span class="erreur">Votre mot de passe doit contenir au moins un chiffre.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'noupcap') { $_SESSION['mdp_info'] = '<span class="erreur">Votre mot de passe doit contenir au moins une majuscule.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'ok') { $_SESSION['mdp_info'] = ''; $_SESSION['form_mdp'] = $mdp; } else if($mdp_result == 'empty') { $_SESSION['mdp_info'] = '<span class="erreur">Vous n\'avez pas entré de mot de passe.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } } else { header('Location: index.php'); exit(); } //Mot de passe suite if(isset($_POST['Mdp_verif'])) { $mdp_verif = trim($_POST['Mdp_verif']); $mdp_verif_result = checkmdpS($mdp_verif, $mdp); if($mdp_verif_result == 'different') { $_SESSION['mdp_verif_info'] = '<span class="erreur">Le mot de passe de vérification diffère du mot de passe.</span><br/>'; $_SESSION['form_mdp_verif'] = ''; $_SESSION['erreurs']++; if(isset($_SESSION['form_mdp'])) unset($_SESSION['form_mdp']); } else { if($mdp_verif_result == 'ok') { $_SESSION['form_mdp_verif'] = $mdp_verif; $_SESSION['mdp_verif_info'] = ''; } else { $_SESSION['mdp_verif_info'] = str_replace('passe', 'passe de vérification', $_SESSION['mdp_info']); $_SESSION['form_mdp_verif'] = ''; $_SESSION['erreurs']++; } } } else { header('Location: index.php'); exit(); } //mail if(isset($_POST['Mail'])) { $mail = trim($_POST['Mail']); $mail_result = checkmail($mail); if($mail_result == 'isnt') { $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' n\'est pas valide.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } else if($mail_result == 'exists') { $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' est déjà pris.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } else if($mail_result == 'ok') { $_SESSION['mail_info'] = ''; $_SESSION['form_mail'] = $mail; } else if($mail_result == 'empty') { $_SESSION['mail_info'] = '<span class="erreur">Vous n\'avez pas entré de mail.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } } else { header('Location: index.php'); exit(); } //mail suite if(isset($_POST['Mail_verif'])) { $mail_verif = trim($_POST['Mail_verif']); $mail_verif_result = checkmailS($mail_verif, $mail); if($mail_verif_result == 'different') { $_SESSION['mail_verif_info'] = '<span class="erreur">Le mail de vérification diffère du mail.</span><br/>'; $_SESSION['form_mail_verif'] = ''; $_SESSION['erreurs']++; } else { if($mail_result == 'ok') { $_SESSION['mail_verif_info'] = ''; $_SESSION['form_mail_verif'] = $mail_verif; } else { $_SESSION['mail_verif_info'] = str_replace(' mail', ' mail de vérification', $_SESSION['mail_info']); $_SESSION['form_mail_verif'] = ''; $_SESSION['erreurs']++; } } } else { header('Location: index.php'); exit(); } //date de naissance if(isset($_POST['Date_naissance'])) { $date_naissance = trim($_POST['Date_naissance']); $date_naissance_result = birthdate($date_naissance); if($date_naissance_result == 'format') { $_SESSION['date_naissance_info'] = '<span class="erreur">Date de naissance au mauvais format ou invalide.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'tooyoung') { $_SESSION['date_naissance_info'] = '<span class="erreur">Agagagougougou areuh ? (Vous êtes trop jeune pour vous inscrire ici.)</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'tooold') { $_SESSION['date_naissance_info'] = '<span class="erreur">Plus de 135 ans ? Mouais...</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'invalid') { $_SESSION['date_naissance_info'] = '<span class="erreur">Le '.htmlspecialchars($date_naissance, ENT_QUOTES).' n\'existe pas.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'ok') { $_SESSION['date_naissance_info'] = ''; $_SESSION['form_date_naissance'] = $date_naissance; } else if($date_naissance_result == 'empty') { $_SESSION['date_naissance_info'] = '<span class="erreur">Vous n\'avez pas entré de date de naissance.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } } //statut if(isset($_POST['Statut'])) { $statut = ($_POST['Statut']); $statut_result = ($statut); if($statut_result == 'ok') { $_SESSION['statut_info'] = ''; $_SESSION['form_statut'] = $statut; } } else { header('Location: index.php'); exit(); } ?> <!--Test des erreurs et envoi--> <?php if($_SESSION['erreurs'] == 0) { $insertion = "INSERT INTO inscription (Pseudo, Mdp, Mdp_verif, Mail, Mail_verif, Date_naissance, Statut) VALUES ('$pseudo','$mdp','$mdp_verif','$mail','$mail_verif','$date_naissance', '$statut')"; if(mysql_query($insertion)) { $queries++; vidersession(); $_SESSION['inscrit'] = $pseudo; //echo $_SESSION['erreurs']; /*informe qu'il s'est déjà inscrit s'il actualise, si son navigateur bugue avant l'affichage de la page et qu'il recharge la page, etc.*/ ?> <h1>Inscription validée !</h1> <p>Nous vous remercions de vous être inscrit sur notre site, votre inscription a été validée !<br/> Vous pouvez vous connecter avec vos identifiants <a href="console_admin.php">ici</a>. </p> <?php } else { if(stripos(mysql_error(), $_SESSION['form_pseudo']) !== FALSE) // recherche du pseudo { unset($_SESSION['form_pseudo']); $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est déjà pris, choisissez-en un autre.</span><br/>'; $_SESSION['erreurs']++; echo $_SESSION['erreurs']; } if(stripos(mysql_error(), $_SESSION['form_mail']) !== FALSE) //recherche du mail { unset($_SESSION['form_mail']); unset($_SESSION['form_mail_verif']); $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' est déjà pris.</span><br/>'; $_SESSION['mail_verif_info'] = str_replace('mail', 'mail de vérification', $_SESSION['mail_info']); $_SESSION['erreurs']++; $_SESSION['erreurs']++; echo $_SESSION['erreurs']; } if($_SESSION['erreurs'] == 0) { $sqlbug = true; //plantage SQL. //$_SESSION['erreurs']++; echo $_SESSION['erreurs']; } } } ?> <?php if(!empty($_SESSION['erreurs'])) { if($_SESSION['erreurs'] == 1) $_SESSION['nb_erreurs'] = '<span class="erreur">Il y a eu 1 erreur.</span><br/>'; else $_SESSION['nb_erreurs'] = '<span class="erreur">Il y a eu '.$_SESSION['erreurs'].' erreurs.</span><br/>'; ?> <h1>Inscription non validée.</h1> <p>Vous avez rempli le formulaire d'inscription du site et nous vous en remercions, cependant, nous n'avons pas pu valider votre inscription, en voici les raisons :<br/> <?php echo $_SESSION['nb_erreurs']; echo $_SESSION['pseudo_info']; echo $_SESSION['mdp_info']; echo $_SESSION['mdp_verif_info']; echo $_SESSION['mail_info']; echo $_SESSION['mail_verif_info']; echo $_SESSION['date_naissance_info']; //echo $_SESSION['statut_info']; $sqlbug = ''; if($sqlbug !== true) { ?> Nous vous proposons donc de revenir à la page précédente pour corriger les erreurs.</p> <div class="center"><a href="inscription.php">Retour</a></div> <?php } else { ?> Une erreur est survenue dans la base de données, votre formulaire semble ne pas contenir d'erreurs, donc il est possible que le problème vienne de notre côté, réessayez de vous inscrire ou contactez-nous.</p> <?php } } ?> </div> <!--fin-->
Merci
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
Modifié par pijaku le 13/12/2013 à 10:22
Modifié par pijaku le 13/12/2013 à 10:22
d'abord met au debut de ton fichier une session_start();
et maintenant pour les erreurs creer un tableau qui va les contenir ce t'evitera de sortir a chaque erreur.
essaie le style
et a la fin tu test
comme cela tu sort une seule fois et tu prend toutes les erreurs
et maintenant arriver sur la page du formulaire
tu faire pour le pseudo
essaie xa aussi et posts les erreurs en meme temps ok
on va trouver ce petit probleme
et maintenant pour les erreurs creer un tableau qui va les contenir ce t'evitera de sortir a chaque erreur.
essaie le style
<?php erreur = array(); erreur['pseudo'] = <span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop court, vous devez en choisir un plus long (minimum 3 caractères).</span><br/>'; ainsi de suite par exemple pour le mot de passe erreur['pseudo'] = '<span class="erreur">Le mot de passe entré est trop court, changez-en pour un plus long (minimum 4 caractères).</span><br/>'; $_SESSION['form_mdp'] = ''; ?>
et a la fin tu test
<?php if( !empty($erreur)){ $_SESSION['erreur'] = $erreur header(....); exit(); } ?>
comme cela tu sort une seule fois et tu prend toutes les erreurs
et maintenant arriver sur la page du formulaire
tu faire pour le pseudo
<?php session_start(); <input type="text" name="Pseudo" id="Pseudo" size="30" value="<?php echo isset($_SESSION['pseudo_info'])? $_SESSION['erreur']['pseudo'] : " "?>" placeholder="Pseudo" /> ?>
essaie xa aussi et posts les erreurs en meme temps ok
on va trouver ce petit probleme
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 10:51
13 déc. 2013 à 10:51
mais normalement c'est ce comportement la que tu veux? et quand tu clique sur le bouton valider
et que il y a des erreurs , il ne se passe rien? test je suis la reflechir pour un code pour toi
et que il y a des erreurs , il ne se passe rien? test je suis la reflechir pour un code pour toi
En fait, j'ai le formulaire à remplir avec un bouton valider puis j'ai une autre page qui affiche si l'inscription s'est bien passé ou alors elle affiche les erreurs. Sur cette 2eme page, en cas d'erreur, j'ai un lien 'retour' pour retourner sur la page du formulaire.
Sinon, je pourrais mettre tout sur la même page en affichant les erreurs juste après les éléments 'text' sauf qu'il faudrait melanger le code PHP avec du HTML et la je vais clairement m'embrouiller :(
Qu'en penses tu?
Merci d'avance Kherox !
Sinon, je pourrais mettre tout sur la même page en affichant les erreurs juste après les éléments 'text' sauf qu'il faudrait melanger le code PHP avec du HTML et la je vais clairement m'embrouiller :(
Qu'en penses tu?
Merci d'avance Kherox !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 11:15
13 déc. 2013 à 11:15
ok je viens de comprendre ton code, essaie de faire cela :
*Primo : mets toutes les erreurs dans un tableau d'erreurs ok
*secondo : tu verifier si le tableau n est pas vide et tu faire la suite des traitements d'insertion ok
*tiercio: dans ton fichier verif_inscription.php :
je ne comprends a qoui sert tes varibles du style $_SESSION['form_pseudo'] = '';
pourqoui faire cela ? alors que tu as la possiblité de le mettre directement dans une session qui s'appelearis pseudo comme par exemple $_SESSION['pseudo'] = $pseudo; et erreur['pseudo'] = "l'erreur en question" ;
et aussi comme tu fais plusieurs traitement sur les valeurs je te conseils d'utiliser du jquery pour faire ces verification comme cela ton code php sera moins loin et facilement maintenable ok. car comme cela tu va detecter les problemes directement a la source. donc si tu veux utiliser du jquery, alors cela va bien te simplifier la vie. croire moi. maintenant si tu compte utiliser toujours ,ok ya pas de soucis mais on sera obliger de coder tout a partir du debut pour comprend le probleme ok
*Primo : mets toutes les erreurs dans un tableau d'erreurs ok
*secondo : tu verifier si le tableau n est pas vide et tu faire la suite des traitements d'insertion ok
*tiercio: dans ton fichier verif_inscription.php :
je ne comprends a qoui sert tes varibles du style $_SESSION['form_pseudo'] = '';
pourqoui faire cela ? alors que tu as la possiblité de le mettre directement dans une session qui s'appelearis pseudo comme par exemple $_SESSION['pseudo'] = $pseudo; et erreur['pseudo'] = "l'erreur en question" ;
et aussi comme tu fais plusieurs traitement sur les valeurs je te conseils d'utiliser du jquery pour faire ces verification comme cela ton code php sera moins loin et facilement maintenable ok. car comme cela tu va detecter les problemes directement a la source. donc si tu veux utiliser du jquery, alors cela va bien te simplifier la vie. croire moi. maintenant si tu compte utiliser toujours ,ok ya pas de soucis mais on sera obliger de coder tout a partir du debut pour comprend le probleme ok
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 11:39
13 déc. 2013 à 11:39
ok pas de soucis allons par etape. verifier bien ton code. tu ne mets pas de redirection en cas d'erreurs. je ne le voit n 'null part .
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 11:44
13 déc. 2013 à 11:44
je vois que dans le fichier ou tu traite tes erreurs est differents du fichier verif_inscription.php? est que je me trompe?
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 11:57
13 déc. 2013 à 11:57
ok donc quand tu detecte une erreur , fait automatiquement une redirecte. et si tu traite les erreurs dans une autre page differentes. maintenant essaie de les traitement dans la page verif_inscription.php et aussi quand tu mets si <?php if($sqlbug !== true) ?>
pourqoui ne pas mettre directement <?php if($sqlbug == " ") ?>
je pense que cela poura t'aider. essaie ca aussi.
et au lieu de faire cela comme ca :
<?php
if($sqlbug !== true)
{
?>
// Nous vous proposons donc de revenir à la page précédente pour corriger les erreurs.</p>
<div class="center"><a href="inscription.php">Retour</a></div>
<?php
}
?>
faire comme cela :
<?php
if($sqlbug == "")
header("location:inscription.php");
?>
essaiyons cela
pourqoui ne pas mettre directement <?php if($sqlbug == " ") ?>
je pense que cela poura t'aider. essaie ca aussi.
et au lieu de faire cela comme ca :
<?php
if($sqlbug !== true)
{
?>
// Nous vous proposons donc de revenir à la page précédente pour corriger les erreurs.</p>
<div class="center"><a href="inscription.php">Retour</a></div>
<?php
}
?>
faire comme cela :
<?php
if($sqlbug == "")
header("location:inscription.php");
?>
essaiyons cela
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 14:48
13 déc. 2013 à 14:48
dans le code tu mets
quand il ya un probleme sur le pseudo du style le $_post['pseudo'] est vide il sort directement sans tenir compte des autre qui sont en bas.
tu comprends? donc essaie de bien remplir le pseudo et laisser les autres champs mal remplir tu comprendra
<?php
if(isset($_POST['Pseudo'])){
}else{
header('Location: index.php');
exit();
}
?>
quand il ya un probleme sur le pseudo du style le $_post['pseudo'] est vide il sort directement sans tenir compte des autre qui sont en bas.
tu comprends? donc essaie de bien remplir le pseudo et laisser les autres champs mal remplir tu comprendra
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 15:02
13 déc. 2013 à 15:02
remet ton code du formulaire je vais voire quelque chose et dis est que les message d'erreurs s 'affiche dans la zone de text avec les span?
Voici le code d"e la page inscription.php :
Et voici le code de la page verif_inscription.php :
Dis moi si tu vois qui peut faire bugger !
Oui il faudrait que je te fasse une copie d'écran pour te montrer !
En gros tu as 'Mail' : <span class= au lieu du placeholder="Mail".
Tu vois?
<ahref="index.php">Accueil</a> <a href="console_admin.php">Connexion</a> <?php session_start(); $_SESSION['erreurs'] = ''; if($_SESSION['erreurs'] > 0) { ?> <h1>Note :</h1> <p> Lors de votre dernière tentative d'inscription, des erreurs sont survenues, en voici la liste :<br/> <?php echo $_SESSION['nb_erreurs']; echo $_SESSION['pseudo_info']; echo $_SESSION['mdp_info']; echo $_SESSION['mdp_verif_info']; echo $_SESSION['mail_info']; echo $_SESSION['mail_verif_info']; echo $_SESSION['date_naissance_info']; //echo $_SESSION['statut_info']; ?> Nous vous avons pré-rempli les champs qui étaient corrects.<br/> <?php } ?> <h1>Formulaire d'inscription</h1> <p>Bienvenue sur la page d'inscription de mon site !<br/> Merci de remplir ces champs pour continuer.</p> <body bgcolor="#64748B"> <form action="verif_inscription.php" method="POST" name="Inscription"> <fieldset><legend>Identifiants</legend> <label for="Pseudo" class="float">Pseudo :</label> <input type="text" name="Pseudo" id="Pseudo" size="30" placeholder="Pseudo" value="<?php echo isset($_SESSION['pseudo_info'])? $_SESSION['pseudo_info'] : " "?>" /> <em>(compris entre 3 et 32 caracteres)</em><br /> <label for="Mdp" class="float">Mot de passe :</label> <input type="password" name="Mdp" id="Mdp" size="30" placeholder="Mot de passe" value="<?php echo isset($_SESSION['mdp_info'])? $_SESSION['mdp_info'] : " "?>" /> <em>(compris entre 4 et 50 caracteres)</em><br /> <label for="Mdp_verif" class="float">Mot de passe (verification) :</label> <input type="password" name="Mdp_verif" id="Mdp_verif" size="30" placeholder="Confirmation mot de passe" value="<?php echo isset($_SESSION['mdp_verif_info'])? $_SESSION['mdp_verif_info'] : " "?>" /><br /> <label for="Mail" class="float">Mail :</label> <input type="text" name="Mail" id="Mail" size="30" placeholder="Mail" value="<?php echo isset($_SESSION['mail_info'])? $_SESSION['mail_info'] : " "?>" /><br /> <label for="Mail_verif" class="float">Mail (verification) :</label> <input type="text" name="Mail_verif" id="Mail_verif" size="30" placeholder="Confirmation mail" value="<?php echo isset($_SESSION['mail_verif_info'])? $_SESSION['mail_verif_info'] : " "?>" /><br /> <label for="Date_naissance" class="float">Date de naissance :</label> <input type="text" name="Date_naissance" id="Date_naissance" size="30" placeholder="Date de naissance" value="<?php echo isset($_SESSION['date_naissance_info'])? $_SESSION['date_naissance_info'] : " "?>" /> <em>(format JJ/MM/AAAA)</em><br/> <label for="Statut" class="float">Statut : </label><select name="Statut"> <option name="Statut" value="Administrateur" selected="selected">Administrateur</option> <option name="Statut" value="Membre">Membre</option></select><br /> <div class="center"><input type="submit" value="Inscription" /></div> </fieldset> </form> </tbody>
Et voici le code de la page verif_inscription.php :
<body bgcolor="#64748B"> <?php session_start(); include('fonctions.php'); //connection au serveur $cnx = mysql_connect( "localhost", "root", "azerty" ); //sélection de la base de données: $db = mysql_select_db( "azerty" ); $_SESSION['erreurs'] = 0; //Pseudo if(isset($_POST['Pseudo'])) { $pseudo = trim($_POST['Pseudo']); $pseudo_result = checkpseudo($pseudo); if($pseudo_result == 'tooshort') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop court, vous devez en choisir un plus long (minimum 3 caractères).</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'toolong') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop long, vous devez en choisir un plus court (maximum 32 caractères).</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'exists') { $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est déjà pris, choisissez-en un autre.</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } else if($pseudo_result == 'ok') { $_SESSION['pseudo_info'] = ''; $_SESSION['form_pseudo'] = $pseudo; } else if($pseudo_result == 'empty') { $_SESSION['pseudo_info'] = '<span class="erreur">Vous n\'avez pas entre de pseudo.</span><br/>'; $_SESSION['form_pseudo'] = ''; $_SESSION['erreurs']++; } } //Mot de passe if(isset($_POST['Mdp'])) { $mdp = trim($_POST['Mdp']); $mdp_result = checkmdp($mdp, ''); if($mdp_result == 'tooshort') { $_SESSION['mdp_info'] = '<span class="erreur">Le mot de passe entre est trop court, changez-en pour un plus long (minimum 4 caracteres).</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'toolong') { $_SESSION['mdp_info'] = '<span class="erreur">Le mot de passe entre est trop long, changez-en pour un plus court. (maximum 50 caracteres)</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'nofigure') { $_SESSION['mdp_info'] = '<span class="erreur">Votre mot de passe doit contenir au moins un chiffre.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'noupcap') { $_SESSION['mdp_info'] = '<span class="erreur">Votre mot de passe doit contenir au moins une majuscule.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } else if($mdp_result == 'ok') { $_SESSION['mdp_info'] = ''; $_SESSION['form_mdp'] = $mdp; } else if($mdp_result == 'empty') { $_SESSION['mdp_info'] = '<span class="erreur">Vous n\'avez pas entre de mot de passe.</span><br/>'; $_SESSION['form_mdp'] = ''; $_SESSION['erreurs']++; } } //Mot de passe suite if(isset($_POST['Mdp_verif'])) { $mdp_verif = trim($_POST['Mdp_verif']); $mdp_verif_result = checkmdpS($mdp_verif, $mdp); if($mdp_verif_result == 'different') { $_SESSION['mdp_verif_info'] = '<span class="erreur">Le mot de passe de verification differe du mot de passe.</span><br/>'; $_SESSION['form_mdp_verif'] = ''; $_SESSION['erreurs']++; if(isset($_SESSION['form_mdp_verif'])) unset($_SESSION['form_mdp_verif']); } else { if($mdp_verif_result == 'ok') { $_SESSION['form_mdp_verif'] = $mdp_verif; $_SESSION['mdp_verif_info'] = ''; } else { $_SESSION['mdp_verif_info'] = str_replace('passe', 'passe de verification', $_SESSION['mdp_info']); $_SESSION['form_mdp_verif'] = ''; $_SESSION['erreurs']++; } } } //mail if(isset($_POST['Mail'])) { $mail = trim($_POST['Mail']); $mail_result = checkmail($mail); if($mail_result == 'isnt') { $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' n\'est pas valide.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } else if($mail_result == 'exists') { $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' est déjà pris.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } else if($mail_result == 'ok') { $_SESSION['mail_info'] = ''; $_SESSION['form_mail'] = $mail; } else if($mail_result == 'empty') { $_SESSION['mail_info'] = '<span class="erreur">Vous n\'avez pas entre de mail.</span><br/>'; $_SESSION['form_mail'] = ''; $_SESSION['erreurs']++; } } //mail suite if(isset($_POST['Mail_verif'])) { $mail_verif = trim($_POST['Mail_verif']); $mail_verif_result = checkmailS($mail_verif, $mail); if($mail_verif_result == 'different') { $_SESSION['mail_verif_info'] = '<span class="erreur">Le mail de verification differe du mail.</span><br/>'; $_SESSION['form_mail_verif'] = ''; $_SESSION['erreurs']++; } else { if($mail_result == 'ok') { $_SESSION['mail_verif_info'] = ''; $_SESSION['form_mail_verif'] = $mail_verif; } else { $_SESSION['mail_verif_info'] = str_replace(' mail', ' mail de verification', $_SESSION['mail_info']); $_SESSION['form_mail_verif'] = ''; $_SESSION['erreurs']++; } } } //date de naissance if(isset($_POST['Date_naissance'])) { $date_naissance = trim($_POST['Date_naissance']); $date_naissance_result = birthdate($date_naissance); if($date_naissance_result == 'format') { $_SESSION['date_naissance_info'] = '<span class="erreur">Date de naissance au mauvais format ou invalide.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'tooyoung') { $_SESSION['date_naissance_info'] = '<span class="erreur">Agagagougougou areuh ? (Vous êtes trop jeune pour vous inscrire ici.)</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'tooold') { $_SESSION['date_naissance_info'] = '<span class="erreur">Plus de 135 ans ? Mouais...</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'invalid') { $_SESSION['date_naissance_info'] = '<span class="erreur">Le '.htmlspecialchars($date_naissance, ENT_QUOTES).' n\'existe pas.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } else if($date_naissance_result == 'ok') { $_SESSION['date_naissance_info'] = ''; $_SESSION['form_date_naissance'] = $date_naissance; } else if($date_naissance_result == 'empty') { $_SESSION['date_naissance_info'] = '<span class="erreur">Vous n\'avez pas entre de date de naissance.</span><br/>'; $_SESSION['form_date_naissance'] = ''; $_SESSION['erreurs']++; } } //statut if(isset($_POST['Statut'])) { $statut = trim($_POST['Statut']); $statut_result = ($statut); if ($statut_result == 'ok') { $_SESSION['statut_info'] = ''; $_SESSION['form_statut'] = $statut; } } else { header('Location: index.php'); exit(); } ?> <!--Test des erreurs et envoi--> <?php if($_SESSION['erreurs'] == 0) { $insertion = "INSERT INTO inscription (Pseudo, Mdp, Mdp_verif, Mail, Mail_verif, Date_naissance, Statut) VALUES ('$pseudo','$mdp','$mdp_verif','$mail','$mail_verif','$date_naissance', '$statut')"; if(mysql_query($insertion)) { $queries++; vidersession(); $_SESSION['inscrit'] = $pseudo; //echo $_SESSION['erreurs']; /*informe qu'il s'est déjà inscrit s'il actualise, si son navigateur bugue avant l'affichage de la page et qu'il recharge la page, etc.*/ ?> <h1>Inscription validée !</h1> <p>Nous vous remercions de vous être inscrit sur notre site, votre inscription a été validee !<br/> Vous pouvez vous connecter avec vos identifiants <a href="console_admin.php">ici</a>. </p> <?php } else { if(stripos(mysql_error(), $_SESSION['form_pseudo']) !== FALSE) // recherche du pseudo { unset($_SESSION['form_pseudo']); $_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est déjà pris, choisissez-en un autre.</span><br/>'; $_SESSION['erreurs']++; echo $_SESSION['erreurs']; } if(stripos(mysql_error(), $_SESSION['form_mail']) !== FALSE) //recherche du mail { unset($_SESSION['form_mail']); unset($_SESSION['form_mail_verif']); $_SESSION['mail_info'] = '<span class="erreur">Le mail '.htmlspecialchars($mail, ENT_QUOTES).' est déjà pris.</span><br/>'; $_SESSION['mail_verif_info'] = str_replace('mail', 'mail de vérification', $_SESSION['mail_info']); $_SESSION['erreurs']++; $_SESSION['erreurs']++; echo $_SESSION['erreurs']; } if($_SESSION['erreurs'] == 0) { $sqlbug = true; //plantage SQL. //$_SESSION['erreurs']++; echo $_SESSION['erreurs']; } } } ?> <?php if(!empty($_SESSION['erreurs'])) { if($_SESSION['erreurs'] == 1) $_SESSION['nb_erreurs'] = '<span class="erreur">Il y a eu 1 erreur.</span><br/>'; else $_SESSION['nb_erreurs'] = '<span class="erreur">Il y a eu '.$_SESSION['erreurs'].' erreurs.</span><br/>'; ?> <h1>Inscription non validée.</h1> <p>Vous avez rempli le formulaire d'inscription du site et nous vous en remercions, cependant, nous n'avons pas pu valider votre inscription, en voici les raisons :<br/> <?php echo $_SESSION['nb_erreurs']; echo $_SESSION['pseudo_info']; echo $_SESSION['mdp_info']; echo $_SESSION['mdp_verif_info']; echo $_SESSION['mail_info']; echo $_SESSION['mail_verif_info']; echo $_SESSION['date_naissance_info']; //echo $_SESSION['statut_info']; if($sqlbug == "") header("location:inscription.php"); ?> Nous vous proposons donc de revenir à la page précédente pour corriger les erreurs.</p> <?php } else { ?> Une erreur est survenue dans la base de données, votre formulaire semble ne pas contenir d'erreurs, donc il est possible que le problème vienne de notre côté, réessayez de vous inscrire ou contactez-nous.</p> <?php } ?> </div> <!--fin-->
Dis moi si tu vois qui peut faire bugger !
Oui il faudrait que je te fasse une copie d'écran pour te montrer !
En gros tu as 'Mail' : <span class= au lieu du placeholder="Mail".
Tu vois?
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
13 déc. 2013 à 15:24
13 déc. 2013 à 15:24
ne porte pas tn attention sur le placeholder , quand tu ecrire :
<input type="" ... value=""> tu ne peut pas afficher un span dans un attr value, tu comprend, donc affiche seulement le valeur sans les span pour voir ce que cela donne et apres on va faire une autre chose pour afficher la classe erreur
<input type="" ... value=""> tu ne peut pas afficher un span dans un attr value, tu comprend, donc affiche seulement le valeur sans les span pour voir ce que cela donne et apres on va faire une autre chose pour afficher la classe erreur
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
16 déc. 2013 à 09:29
16 déc. 2013 à 09:29
oui il a été declarer mais il est vide donc c'est pour cela que il met sa. donc pour eviter ce probleme faire un :
<?php echo isset($_SESSION['statut_info']) ? $_SESSION['statut_info'] : " " ?>cela va resoudre le probleme
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
16 déc. 2013 à 09:48
16 déc. 2013 à 09:48
met un required dans tout tes champs input comme cela <input type="text" name="pseudo" required> cela forcera le navigateur a bloquer la validation tant que ce champ n est pas remplir. et aussi si tu veux mettre une couleur rouge sur les champs mal remplir ajout une classe css au champs.
exemple :
et maintenant dans le code tu
pour voir
exemple :
.erreur{
boder : 1px solid red;
}
et maintenant dans le code tu
<input type="text" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?>>
pour voir
J'ai une erreur de syntaxe !
Parse error: syntax error, unexpected '?', expecting ',' or ')' in C:\wamp\www\Formulaire\inscription.php on line 27
Voici le code de ma page :
Mon code css est mal placé aussi non?
Merci
Parse error: syntax error, unexpected '?', expecting ',' or ')' in C:\wamp\www\Formulaire\inscription.php on line 27
Voici le code de ma page :
<a href="index.php">Accueil</a> <a href="console_admin.php">Connexion</a> <?php session_start(); ?> <h1>Note :</h1> <p> Lors de votre derniere tentative d'inscription, des erreurs sont survenues, en voici la liste :<br/> <?php echo $_SESSION['nb_erreurs']; echo $_SESSION['pseudo_info']; echo $_SESSION['mdp_info']; echo $_SESSION['mdp_verif_info']; echo $_SESSION['mail_info']; echo $_SESSION['mail_verif_info']; echo $_SESSION['date_naissance_info']; echo isset($_SESSION['statut_info']) ? $_SESSION['statut_info'] : " " ?> .erreur{ boder : 1px solid red; } <h1>Formulaire d'inscription</h1> <p>Bienvenue sur la page d'inscription de mon site !<br/> Merci de remplir ces champs pour continuer.</p> <body bgcolor="#64748B"> <form action="verif_inscription.php" method="POST" name="Inscription"> <fieldset><legend>Identifiants</legend> <label for="Pseudo" class="float">Pseudo :</label> <input type="text" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Pseudo" required id="Pseudo" size="30" placeholder="Pseudo" value="<?php if($_SESSION['pseudo_info'] !== '') echo htmlspecialchars($_SESSION['form_pseudo'], ENT_QUOTES); ?>" /> <em>(compris entre 3 et 32 caracteres)</em><br /> <label for="Mdp" class="float">Mot de passe :</label> <input type="password" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Mdp" required id="Mdp" size="30" placeholder="Mot de passe" value="<?php if($_SESSION['mdp_info'] !== '') echo htmlspecialchars($_SESSION['form_mdp'], ENT_QUOTES); ?>" /> <em>(compris entre 4 et 50 caracteres)</em><br /> <label for="Mdp_verif" class="float">Mot de passe (verification) :</label> <input type="password" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Mdp_verif" required id="Mdp_verif" size="30" placeholder="Confirmation mot de passe" value="<?php if($_SESSION['mdp_verif_info'] !== '') echo htmlspecialchars($_SESSION['form_mdp_verif'], ENT_QUOTES); ?>" /><br /> <label for="Mail" class="float">Mail :</label> <input type="text" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Mail" required id="Mail" size="30" placeholder="Mail" value="<?php if($_SESSION['mail_info'] !== '') echo htmlspecialchars($_SESSION['form_mail'], ENT_QUOTES); ?>" /><br /> <label for="Mail_verif" class="float">Mail (verification) :</label> <input type="text" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Mail_verif" required id="Mail_verif" size="30" placeholder="Confirmation mail" value="<?php if($_SESSION['mail_verif_info'] !== '') echo htmlspecialchars($_SESSION['form_mail_verif'], ENT_QUOTES); ?>" /><br /> <label for="Date_naissance" class="float">Date de naissance :</label> <input type="text" <?php echo isset($_SESSION['erreur']['pseudo'] ? "class=erreur") ?> name="Date_naissance" required id="Date_naissance" size="30" placeholder="Date de naissance" value="<?php if($_SESSION['date_naissance_info'] !== '') echo htmlspecialchars($_SESSION['form_date_naissance'], ENT_QUOTES); ?>" /> <em>(format JJ/MM/AAAA)</em><br/> <label for="Statut" class="float">Statut : </label><select name="Statut"> <option name="Statut" value="Administrateur" <?php if (isset($_SESSION['statut_info']) && $_SESSION['statut_info'] == "Administrateur") echo "selected='selected'"; else echo ""; ?> >Administrateur</option><br /> <option name="Statut" value="Membre" <?php if (isset($_SESSION['statut_info']) && $_SESSION['statut_info'] == "Membre") echo "selected='selected'"; else echo ""; ?> >Membre</option><br /> </select> <br /> <div class="center"><input type="submit" value="Inscription" /></div> </fieldset> </form> </tbody>
Mon code css est mal placé aussi non?
Merci
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
16 déc. 2013 à 10:13
16 déc. 2013 à 10:13
est que dans ta recuperation des errerus tu les mets dans un tableau?
Non kherox !
Et au lieu de créer un nouveau code php dans chaque champs de formulaire ?
Genre :
Merci
Et au lieu de créer un nouveau code php dans chaque champs de formulaire ?
Genre :
<label for="Pseudo" class="float">Pseudo :</label> <input type="text" name="Pseudo" required id="Pseudo" size="30" placeholder="Pseudo" value="<?php if($_SESSION['pseudo_info'] !== '') echo htmlspecialchars($_SESSION['form_pseudo'], ENT_QUOTES) ? "class=erreur"; ?>" /> <em>(compris entre 3 et 32 caracteres)</em><br />
Merci
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
16 déc. 2013 à 11:00
16 déc. 2013 à 11:00
j avais un probleme de connexion maintenant je suis la
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 09:27
17 déc. 2013 à 09:27
essaie cette ligne en entier sans changer
<label for="Pseudo" class="float">Pseudo :</label> <input type="text" name="Pseudo" id="Pseudo" size="30" placeholder="Pseudo" value="<?php echo isset($_SESSION['pseudo_info'] )? htmlspecialchars($_SESSION['form_pseudo'], ENT_QUOTES) : "" ;?>" class="<?php echo isset($_SESSION['erreur']['pseudo']) ? "erreur" ;?>" /><em>(compris entre 3 et 32 caracteres)</em><br />
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 09:45
17 déc. 2013 à 09:45
<label for="Pseudo" class="float">Pseudo :</label> <input type="text" name="Pseudo" id="Pseudo" size="30" placeholder="Pseudo" value="<?php echo isset($_SESSION['pseudo_info'] )? $_SESSION['form_pseudo'] : "" ;?>" class="<?php echo isset($_SESSION['erreur']['pseudo']) ? "erreur" ;?>" /><em>(compris entre 3 et 32 caracteres)</em><br />
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 10:00
17 déc. 2013 à 10:00
essaie d'enlever pour la class pour voir ok
enqueteactualite
Messages postés
70
Date d'inscription
mercredi 11 décembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
16
17 déc. 2013 à 15:17
17 déc. 2013 à 15:17
Je te conseil pas d'utiliser des sessions car tu vas encombré ton serveur et réduire les performance si ton site à beaucoup de trafic....
Je te conseil de...
définir une variable $inputs['current']['pseudo'] (information original) et $inputs['erreur']['pseudo'] qui contient la valeur par défaut des champs du formulaire ainsi qu'un deuxième tableau qui contient éventuellement des erreurs en cas de saisie.
à la validation tu rempli le tableau erreur au besoin...
et sur le front coté formulaire et fait directement des echo $inputs['erreur']['pseudo'] <= par defaut la valeur est vide donc y'a rien à afficher et si y 'a une erreur alors elle s'affiche...
Tu peux même t'amuser à mettre
$inputs['erreur']['pseudo']['value']= '<span class="error">c pas bon blabla..</span>';
$inputs['erreur']['pseudo']['class'] = 'une class à mettre dans l'input concerné';
...
Je te conseil vraiment pas les sessions ... Tu dois retransmettre les données du $_POST à une variable qui sera utilisé sur le front...
Je te conseil de...
définir une variable $inputs['current']['pseudo'] (information original) et $inputs['erreur']['pseudo'] qui contient la valeur par défaut des champs du formulaire ainsi qu'un deuxième tableau qui contient éventuellement des erreurs en cas de saisie.
à la validation tu rempli le tableau erreur au besoin...
et sur le front coté formulaire et fait directement des echo $inputs['erreur']['pseudo'] <= par defaut la valeur est vide donc y'a rien à afficher et si y 'a une erreur alors elle s'affiche...
Tu peux même t'amuser à mettre
$inputs['erreur']['pseudo']['value']= '<span class="error">c pas bon blabla..</span>';
$inputs['erreur']['pseudo']['class'] = 'une class à mettre dans l'input concerné';
...
Je te conseil vraiment pas les sessions ... Tu dois retransmettre les données du $_POST à une variable qui sera utilisé sur le front...
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 15:41
17 déc. 2013 à 15:41
oui je crois que tu dois faire comme tu l 'as dit, et aussi dans ton isset de la class met d'abord , rouge avant blanche
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 15:44
17 déc. 2013 à 15:44
ne touche pas a ta configuration ok
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 16:01
17 déc. 2013 à 16:01
ok ta pu regler toutes tes soucis?
kherox
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015
1
17 déc. 2013 à 16:15
17 déc. 2013 à 16:15
verifie si la classe est bein celle que tu as definir dynamiquement? lorsque tu reviens sur la page du formulaire , ouvre l'inspecteur de code pour voir la classe est bien celle que tu as definir, et ensuite on va continuer
13 déc. 2013 à 09:33
Je vais tester tout ça et je te tiens au courant.
13 déc. 2013 à 09:41
Modifié par Bryant le 13/12/2013 à 09:51
Je n'y arrive toujours pas ! J'ai fait ce que tu m'as dit Kherox mais encore une fois sans succès !
C'est peut être le lien vers ma page qui n'est pas bon?
Voici mon code :
Peux tu me dire si tu vois quelque chose de pas normal stp.
Pour info, j'ai une autre page qui gère les erreurs, le nombre d'erreur et les controles sur chaque champs.
Les erreurs s'affichent sur une autre page et du coup, il faut que je clic sur un lien pour revenir sur la page du formulaire.
Merci d'avance