Formulaire d'inscription
Anonymous95340
Messages postés
114
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Dans le cadre de mon BTS SIO je suis entrain de creer un site de reservation de formation. J'ai crée le formulaire d'inscription mais je suis bloquer au niveau des gestions des erreurs car quand je remplis les champs de mon formulaire d'inscription celui si affiche toujours l'erreur " veuillez saisir tous les champs ". Je voudrais que a la fin de l'inscription de l'utilisateur celui ci soit directement rediriger vers son profil.
Merci d'avance pour votre aide.
Voici mon code
NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Dans le cadre de mon BTS SIO je suis entrain de creer un site de reservation de formation. J'ai crée le formulaire d'inscription mais je suis bloquer au niveau des gestions des erreurs car quand je remplis les champs de mon formulaire d'inscription celui si affiche toujours l'erreur " veuillez saisir tous les champs ". Je voudrais que a la fin de l'inscription de l'utilisateur celui ci soit directement rediriger vers son profil.
Merci d'avance pour votre aide.
Voici mon code
<?php session_start(); require 'config/database.php'; require 'includes/fonctions.php'; //Si le fotmulaire à été soumis if(isset($_POST['Inscription'])){ //Si tous les champs ont été remplis if(not_empty(['login','mdp','nom','prenom','adresse','email','codePostal','tel','fonction','association'])){ $errors = []; //Tableau contenant l'ensemble des erreurs extract($_POST); if(mb_strlen($login)< 3){ $errors[$login] = 'Login trop court (minimun plus de 5 caracteres)'; } $mdp = sha1($_POST['mdp']); //Permet de vérifier si c'est une adresse mail valide if(!filter_var($email, FILTER_VALIDATE_EMAIL)){ $errors[$email] = 'adresse mail invalide'; } //Mot de passe inferieur a 6 caracteres if(mb_strlen($mdp)< 6){ $errors[$mdp] = 'mot de passe trop court! (minimun 6 caracteres)'; } //si le login est deja utilisé if(is_already_in_use('login', $login,'personnelassociatif')){ $errors[$login] ='Login déja utilisé'; } if(is_already_in_use('email', $email,'personnelassociatif')){ $errors[$email] ='email déja utilisé'; } if(mb_strlen($telephone)< 10){ $errors[$telephone] = 'Le numero de télephone est trop court! (Numero a 10 chiffres)'; } if(mb_strlen($cp)< 5){ $errors[$cp] = 'Code postal inconnu'; } if(count($errors) == 0){ sauvegarde_input(); //Envoi d'un mail d'activation //Informer l'utilisateur pour qu'il verifie sa boite mail //Redirection vers sa page de profil } }else{ //$errors[]= 'Veuillez remplir tous les champs !'; sauvegarde_input(); } } ?> <?php require ('views/inscriptionView.php'); ?>
NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
A voir également:
- Formulaire d'inscription php pdo
- Whatsapp formulaire opposition - Guide
- Wetransfer gratuit sans inscription - Guide
- Formulaire de réclamation facebook - Guide
- Twitter inscription - Guide
- Vinted inscription - Guide
6 réponses
Bonjour,
Oh le joli copier/coller d'un code existant ...
https://openclassrooms.com/forum/sujet/if-not-empty-ou-pas
Que contient la fonction not_empty ?
(voir le fichier require 'includes/fonctions.php'; )
Ensuite pour ta seconde question : redirection, il suffit d'utiliser la fonction php :
Oh le joli copier/coller d'un code existant ...
https://openclassrooms.com/forum/sujet/if-not-empty-ou-pas
Que contient la fonction not_empty ?
(voir le fichier require 'includes/fonctions.php'; )
Ensuite pour ta seconde question : redirection, il suffit d'utiliser la fonction php :
header('location : url_ou_rediriger'); exit();
Salut,
pour communiquer ton code, utilise les balises prévues à cet effet, ça sera plus simple pour tout le monde ;)
Le problème vient certainement de ta fonction not_empty, que tu ne montres pas ici.
pour communiquer ton code, utilise les balises prévues à cet effet, ça sera plus simple pour tout le monde ;)
Le problème vient certainement de ta fonction not_empty, que tu ne montres pas ici.
Bonjour,
Désole je savais pas comment faire lol voici mon code qui est dans le fichier fonctions.php
Désole je savais pas comment faire lol voici mon code qui est dans le fichier fonctions.php
<?php //Verifie si on n'a donner des éléments if(!function_exists('not_empty')){ function not_empty($fields = []){ if(count($fields)!= 0){ //La boucle permet de vérifier si chaque element du tableau n'est pas vide foreach ($fields as $field){ if(empty($_POST[$field]) || trim($_POST[$field])==FALSE){ return FALSE; } } return TRUE; } } } //Si le nom est deja existant if(!function_exists('is_already_in_use')){ function is_already_in_use($field,$value, $personnelassociatif){ global $db; $q = $db->prepare('SELECT idpersonne FROM $personnelassociatif WHERE BY $field = ? '); $q->execute([$value]); $count = $q->rowCount(); $q->closeCursor(); return $count; } } if(!function_exists('sauvegarde_input')){ function sauvegarde_input(){ foreach ($_POST as $key => $value){ if(strpos($key,'password' ===FALSE)){ $_SESSION['input'][$key] = $value; } } } } if(!function_exists('get_input')){ function get_input($key){ return !empty ($_SESSION['input'][$key]) ? $_SESSION['input'][$key] : null; } }
EDIT : Ajout du LANGAGE dans les balises de code
Bonjour,
Oui je réutilise le code pour un projet en BTS car il correspond ^^.
not_empty contient:
Merci beaucoup .
Oui je réutilise le code pour un projet en BTS car il correspond ^^.
not_empty contient:
//Verifie si on n'a donner des éléments
if(!function_exists('not_empty')){
function not_empty($fields = []){
if(count($fields)!= 0){
//La boucle permet de vérifier si chaque element du tableau n'est pas vide
foreach ($fields as $field){
if(empty($_POST[$field]) || trim($_POST[$field])==FALSE){
return FALSE;
}
}
return TRUE;
}
}
}
Merci beaucoup .
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question