Requete dans une table sql

Bonjour à tous, j'ai fais un onglet pour chercher un élément dans ma base de données. Le problème c'est que j'aimerais afficher "élément non trouvé" quand il n'existe pas dans ma bdd.

J'ai fais ce code (je cherche toutes les infos d'un client en fonction du numero de sa commande) :

<?php
	$w = $_POST['testnumbillet'];
	$reponse = $bdd-> query('SELECT civilite,nom,prenom,adresse,cpostal,ville,email FROM infos WHERE numcommande ="'.$w.'"');
	if($reponse==true){
	while($donnees = $reponse->fetch()){
		echo '<p class="statutbillet">Billet valide</p>';
		echo '<p class="infospersonne">'.$donnees['civilite'].' '.$donnees['nom'].' '.$donnees['prenom'].'</p>';
		echo '<br>';echo '<br>';echo '<br>';
		echo '<p class ="infospersonne">'.$donnees['adresse'].' '.$donnees['cpostal'].' '.$donnees['ville'].'</p>';
		echo '<br>';echo '<br>';echo '<br>';
		echo '<p class="infospersonne">'.$donnees['email'].'</p>';
	}
	$reponse->closeCursor();
	}
	
	
	else{
		echo '<p class="statutbillet2">Billet inconnu !</p>';
	}
?>


Sauf que même si le numéro (et donc le client) n'existe pas, il ne passe jamais au else, il n'affiche tout simplement rien. Je suppose que cela vient du fait que le $reponse passe à true peu importe si la requête est fructueuse ou non, mais du coup je ne vois pas comment faire pour lui dire que si il ne trouve rien, il doit passer au else.

Voilà, merci d'avance! :)

1 réponse