Bonjour
J'ai une base de donnée avec une table qui contient dans un champ plusieurs fois les mêmes noms
Donc en faisant une requête toute simple du type :
$sql = "SELECT * FROM addmessage";
$req = mysql_query($sql);
while($voir = mysql_fetch_array($req))
{
echo $voir'suspect'];
}
Le problème de ce code, c'est qu'il m'affiche toutes les entrées et plusieurs "suspect" se répèterons plusieurs fois sachant qu'ils sont plusieurs fois dans le champ.
Existe t-il une méthode pour filtrer ça qu'il n'affiche qu'une seul fois chaque donnée même si elles sont plusieurs fois dans la table ?
Merci de vos réponse
PS : Super site, j'ai appris énormément de choses dessus !
Si tu veux afficher tes donnée, une par une, tu dois faire ça:
$id=$_GET"id"]
$sql = "SELECT * FROM addmessage WHERE id='$id'";
$req = mysql_query($sql);
($voir = mysql_fetch_array($req));
echo $voir'suspect'];
Dans ton URL ça donne: "tapage.php?id=ID"
Merci de ta réponse, en faite mon problème est pas la, dans ma table il y à plusieurs suspects et certains qui ce répètent plusieurs fois, le problème c'est que je voudrait lister les suspects entré dans la table sans qu'il ne se répètent plusieurs fois.
Je ne sais vraiment pas comment faire et merci de votre aide.
Teste de faire un COUNT et de grouper par contenu, avec HAVING COUNT(id) > 1 par exemple. Je sais pas trop si j'ai été clair XD
Salut,
tu testes avec DISTINCT :
$sql = "SELECT DISTINCT * FROM addmessage";
$req = mysql_query($sql);
while($voir = mysql_fetch_array($req))
{ echo $voir'suspect']; }
Bonne chance
Merci pour vos réponses
J'ai essayer DISTINCT mais ça fonctionne pas, et sinon j'ai rien compris Grafikart ^^
Merci beaucoup j'ai trouvé, l'erreur est qu'il fallait remplacer le * par le champ que je veut distinguer.
Ce qui donne :
$sql = "SELECT DISTINCT suspect FROM addmessage";
Merci encore, à bientôt