Recherche couple valeur dans table avec count()
Résoludanielos77 Messages postés 108 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Toujours en galère avec une requête, je me résous à poster ici.
Afin de voir si une personne est déjà inscrite, je pensais faire une requête sur la table membres sur les colonnes Nom et Prenom.
La requête directement dans la base fonctionne et donne bien la valeur à l'alias dejamembre 0 ou 1 mais dans code de la page, lorsque j'essaie d'afficher cette valeur pour ensuite la traiter avec un if else, j'ai les messages ci-dessous :
Use of undefined constant dejamembre - assumed 'dejamembre' (this will throw an Error in a future version of PHP) in... Je comprends bien que c'est pas le bon choix pour le futur mais je ne sais pas comment corriger.
l'autre message est
count(): Parameter must be an array or an object that implements Countable in... Or c'est bien un tableau qui aura au maximum 1 ligne (soit le couple Non/Prenom est présent soit il ne l'est pas)
Le morceau de code est :
// Vérification que Nom Prenom n'est pas déjà membre $sth = $bdd->prepare("SELECT COUNT(*) AS dejamembre FROM membres WHERE concat(Nom, Prenom) = '$Nom.$Prenom'"); $sth->execute(); echo count(dejamembre).'<br>';
Merci au bon samaritain qui m'expliquera comment je dois procéder.
Daniel
Windows / Firefox 107.0
- Fetchcolumn() php
- Table ascii - Guide
- Table des matières word - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Recherche photo - Guide
- Table des caractères - Guide
2 réponses
Bonjour,
Il faut faire un fetch ;.. voir même, ici, tu peux faire un fetchColumn sur l'exécution de ta requête.
Il ne faut pas non plus oublier de mettre un $ devant le nom de tes variables php
bref:
// Vérification que Nom Prenom n'est pas déjà membre $sth = $bdd->prepare("SELECT COUNT(*) AS dejamembre FROM membres WHERE concat(Nom, Prenom) = :nomPrenom "); $sth->execute([':nomPrenom'=> $Nom . $Prenom ]); $dejamembre = $sth->fetchColumn(); echo $dejamembre.'<br>';
Bonjour Jordane45,
Je peux faire un fetchColumn alors que Nom et Prenom sont dans des colonnes différentes ?
ce qui compte c'est le résultat du select où il n'y a qu'un seul champ.
OK. Merci bien.
Bonnes fêtes de fin d'année à vous.