Problème PHP...
Tommobylette
Messages postés
1
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 -
Bonsoir,
Je suis actuellement en train de coder un site dans lequel j'utilise du HTML/CSS et du PHP.
Dans un formulaire, je veux mettre quelques contraintes a l'utilisateur, comme remplir tous les champs, ou que les deux mots de passe soient identiques.
La partie ci-dessous marchait au début, mais maintenant elle ne marche plus, si quelqu'un voit le problème, qu'il n'hésite pas à me prévenir.
Merci d'avance
EDIT : Ajout des balises de code (jordane)
Je suis actuellement en train de coder un site dans lequel j'utilise du HTML/CSS et du PHP.
Dans un formulaire, je veux mettre quelques contraintes a l'utilisateur, comme remplir tous les champs, ou que les deux mots de passe soient identiques.
La partie ci-dessous marchait au début, mais maintenant elle ne marche plus, si quelqu'un voit le problème, qu'il n'hésite pas à me prévenir.
Merci d'avance
<?php if (isset($_POST['Valider'])) if (!empty($_POST['sexe']) && !empty($_POST['nom']) && !empty($_POST['prenom']) && !empty($_POST['email']) && !empty($_POST['mdp']) && !empty($_POST['cmdp']) && !empty($_POST['téléphone'])) if ($_POST['mdp'] != $_POST['cmdp']) { echo 'Bienvenue' . strip_tags($_POST['sexe']) . ' ' . strip_tags($_POST['nom']) . ' ! Votre compte a bien été créé. <br>'; echo "Cliquez sur le logo ci-dessous pour poursuivre votre réservatoin.<br><br>"; echo '<a href="index3.php" target="_blank"><img src="logo.jpg"></a> <br>'; } else { $p = $_SERVER['PHP_SELF']; $page = basename ($p); if($page == "index2.php") { echo '<script>alert("Les deux mots de passe sont différents.");</script>'; } } else { $p = $_SERVER['PHP_SELF']; $page = basename ($p); if($page == "index2.php") { echo '<script>alert("Les champs ne sont pas tous remplis correctement !");</script>'; } } ?>
EDIT : Ajout des balises de code (jordane)
A voir également:
- Problème PHP...
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
1 réponse
Bonjour,
Déjà.. commence par appliquer ce qui est marqué ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Ensuite... évite de répéter du code pour rien....
puis... NE pas utililser de caractères accentués ni spéciaux dans le nom des variables (que ce soit dans le nom des variables php, les "name" html ou les nom des champs dans une BDD )
Et enfin, comme indiqué dans le lien que je t'ai donné... commence par récupérer "PROPREMENT" les variables avant
de les utiliser.
En gros.. ton code deviendrait un truc du genre :
Déjà.. commence par appliquer ce qui est marqué ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Ensuite... évite de répéter du code pour rien....
puis... NE pas utililser de caractères accentués ni spéciaux dans le nom des variables (que ce soit dans le nom des variables php, les "name" html ou les nom des champs dans une BDD )
Et enfin, comme indiqué dans le lien que je t'ai donné... commence par récupérer "PROPREMENT" les variables avant
de les utiliser.
En gros.. ton code deviendrait un truc du genre :
<?php //------------------------------------// //affichage des erreurs php //------------------------------------// error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //------------------------------------// //récupération des variables //------------------------------------// $sexe = !empty($_POST['sexe']) ? $_POST['sexe'] : NULL; $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL; $prenom = !empty($_POST['prenom']) ? $_POST['prenom'] : NULL; $email = !empty($_POST['email']) ? $_POST['email'] : NULL; $mdp = !empty($_POST['mdp']) ? $_POST['mdp'] : NULL; $cmdp = !empty($_POST['cmdp']) ? $_POST['cmdp'] : NULL; $telephone = !empty($_POST['telephone']) ? $_POST['telephone'] : NULL; $p = !empty($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : NULL; $page = !empty($p) ? basename($p) : ""; //------------------------------------// //traitement //------------------------------------// if (isset($_POST['Valider'])){ if($nom && $prenom && $sexe && $email && $mdp && $cmdp && $telephone){ if($mdp != $cmdp){ echo '<script>alert("Les deux mots de passe sont différents.");</script>'; }else{ echo 'Bienvenue' . strip_tags($sexe) . ' ' . strip_tags($nom) . ' ! Votre compte a bien été créé. <br> Cliquez sur le logo ci-dessous pour poursuivre votre réservatoin.<br><br> <a href="index3.php" target="_blank"> <img src="logo.jpg"> </a><br>'; } }else{ //Tous les champs ne sont pas remplis... echo '<script>alert("Les deux mots de passe sont différents.");</script>'; } } ?>