Kowli_12
Messages postés10Date d'inscriptionlundi 19 février 2018StatutMembreDernière intervention28 avril 2018
-
Modifié le 19 févr. 2018 à 07:27
Kowli_12
Messages postés10Date d'inscriptionlundi 19 février 2018StatutMembreDernière intervention28 avril 2018
-
20 févr. 2018 à 00:59
Bonjour
Je suis débutant en php
je voulais testé ce code en me connectant à une base de donné Mysql, tous se passe bien seul problème, la condition else ne s’exécute pas, même quand le if est fausse, rien de ce qui est prévus dans le bloc else ne s'affiche.
Voici le mini page qui doit effectuer le traitement du formulaire transmis par post
Merci encore une fois à ceux qui consacreront leur temps à me répondre
if(isset($_POST['prenom']) && isset($_POST['password']))
{
$name = $_POST['prenom'];
$password = $_POST['password'];
try {
$connexion = new PDO("mysql:host=$host; dbname=Membres;charset=utf8", $user, $pass);
$connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (Exception $ex) {
echo 'Erreur de connexion à la base de donné '.$ex->getMessage();
}
$donne = $connexion->prepare('SELECT Prenom, Password FROM User WHERE Prenom="'.$name.'" AND Password="'.$password.'"');
$donne->execute();
while ($resultat = $donne->fetch())
{
echo $resultat['Prenom'];
}
$donne->closeCursor();
}
else {
echo 'Vous n\'ête pas encore inscrit sur le forum, cliquer <a href=\'../HTML/users.html\'> ICI </a> pour vous inscrire';
}
Kowli_12
Messages postés10Date d'inscriptionlundi 19 février 2018StatutMembreDernière intervention28 avril 2018 19 févr. 2018 à 19:58
Merci pour la réponse et je m'excuse pour le retard
je vais appliquer tes conseils dans l'avenir,pour ce qui est de l'accolade il n'y pas un de trop!
merci encore
jordane45
Messages postés37864Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 7 décembre 2023343
>
Kowli_12
Messages postés10Date d'inscriptionlundi 19 février 2018StatutMembreDernière intervention28 avril 2018 Modifié le 19 févr. 2018 à 20:43
Oui mal vu pour les accolades.
C'est que ton code est mal indenté...
Quoi qu'il en soit, essaye ça :
$Prenom = !empty($_POST['prenom']) ? $_POST['prenom'] : NULL;
$password = !empty($_POST['password']) ? $_POST['password'] : NULL;
if($Prenom && $password){
try {
$connexion = new PDO("mysql:host=$host; dbname=Membres;charset=utf8", $user, $pass);
$connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (Exception $ex) {
echo 'Erreur de connexion à la base de donné '.$ex->getMessage();
exit();
}
$sql = 'SELECT Prenom, Password FROM User WHERE Prenom=:Prenom AND Password=:password';
$datas = array(':Prenom'=>$Prenom ,':password'=>$password);
try {
$donne = $connexion->prepare($sql);
$donne->execute();
} catch (Exception $ex) {
echo 'Erreur de requête !: '.$ex->getMessage();
}
while ($resultat = $donne->fetch())
{
echo $resultat['Prenom'];
}
$donne->closeCursor();
} else {
echo 'Vous n\'ête pas encore inscrit sur le forum, cliquer <a href=\'../HTML/users.html\'> ICI </a> pour vous inscrire';
}
Kowli_12
Messages postés10Date d'inscriptionlundi 19 février 2018StatutMembreDernière intervention28 avril 2018 20 févr. 2018 à 00:59
Merci de m'avoir remis dans les rails, tout fonctionne maintenant.
Je te remercie encore d'avoir pris ton temps pour me répondre
19 févr. 2018 à 07:29
http://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code
19 févr. 2018 à 19:58
je vais appliquer tes conseils dans l'avenir,pour ce qui est de l'accolade il n'y pas un de trop!
merci encore
Modifié le 19 févr. 2018 à 20:43
C'est que ton code est mal indenté...
Quoi qu'il en soit, essaye ça :
20 févr. 2018 à 00:59
Je te remercie encore d'avoir pris ton temps pour me répondre