Trouver une rangée sachant qu'elle est unique

Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024 - Modifié le 13 juil. 2024 à 14:37
Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024 - 16 juil. 2024 à 14:18

Bonjour,

Ceci fonctionne parfaitement

$Users = mysqli_query($db,"select username FROM `users` where `user_id`=".$UserID );
while($User = mysqli_fetch_array($Users))
	{
	$UserName = $User['username'];
	}

Toutefois je suis certain que je ne trouverai qu'une seule Row car User_id est une clé unique, par conséquent je trouve dommage d'utiliser While sachant que la "boucle" ne sera parcourue qu'une seule fois.

Comment trouver directement s la seule entrée qui répond au Where ?

Grand merci d'avance pour votre aide
Windows / Chrome 126.0.0.0

2 réponses

Alex-Rever Messages postés 447 Date d'inscription lundi 8 décembre 2008 Statut Membre Dernière intervention 13 juillet 2024 53
13 juil. 2024 à 14:41

Bonjour,

Tu peux utiliser mysqli_fetch_assoc pour récupérer directement la seule entrée. Voici un exemple concret :

$UserID = 123; // Exemple de UserID
$Users = mysqli_query($db, "SELECT username FROM `users` WHERE `user_id` = $UserID");
$User = mysqli_fetch_assoc($Users);
if ($User) {
    $UserName = $User['username'];
}

Cette méthode récupère directement la seule ligne sans utiliser de boucle.

0
Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024 9
13 juil. 2024 à 16:44

Merci, le IF est-il nécessaire si je suis certain qu'il y en a un et un seul ?
Ceci fonctionne-t-il de même ?

$User = mysqli_fetch_assoc($Users);
$UserName = $User['username'];
0
yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024 1 557 > Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024
13 juil. 2024 à 18:45

Cela fonctionnera jusqu'au jour où la certitude se transformera en supposition.

Pourquoi cette question, ne sais-tu pas ce que fait le IF?

0
Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024 9 > yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024
13 juil. 2024 à 19:03

A quoi sert il de coder IF si la réponse est toujours TRUE ?

0
yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024 1 557 > Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024
13 juil. 2024 à 19:58

Elle est toujours TRUE, jusqu'au jour où elle ne le sera plus.

Coder, c'est se préparer à l'imprévu.

0
Herve_be Messages postés 1077 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 6 décembre 2024 9 > yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024
16 juil. 2024 à 14:18

OK, merci, je vais ajouter IF (1 == 1) devant toutes mes instructions, on ne sait jamais ...

0