Des double dans une table mysql

[Résolu]
Signaler
Messages postés
99
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
1 septembre 2010
-
Messages postés
99
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
1 septembre 2010
-
Bonjour,

J'aimerai vérifier dans une de mes tables mysql qu'il n'y aie pas de double mais comment faire??

a bientot

----------------------------------------------------------------------------------------

Moteur de recherches, annuaire,... pour BLOGS -->http://www.seek-blog.com

6 réponses

Messages postés
99
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
1 septembre 2010

Voila c'est bon. J'ai trouver!

Pour ceux qui ont le même probleme que moi allé sur cette source: http://www.phpcs.com/code.aspx?ID=27792

ciaoo

----------------------------------------------------------------------------------------

Moteur de recherches, annuaire,... pour BLOGS -->http://www.seek-blog.com
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

tu peux faire un :$requete mysq_query("SELECT * FROM table_concernee WHERE champ_a_verifiee `".$variable_a_inserer."`");
if (mysql_num_rows($requete) == '0') echo $variable_a_inserer,' n\'est pas dans la table';

Si t'as question, c'est comment verifier que dans une table il n'y a pas deux mêmes champs tu lances une requete qui prend toutes les entrées et les rajoutes au fur et à mesure dans un array puis à chaque iteration de la boucle tu cherche si l'entrée a inserer n'est pas deja dans l'array.


_Marikou
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

pour veirifer qu'il n'y a pas de double :
$present = 'non';
$requete = mysq_query("SELECT * FROM table_concernee");
while ($row = mysql_fetch_object($requete)) {

if (!in_array($row->champ_a_verifier,$tableau_entre))
{
$tableau_entre[] = $row->champ_a_verifier;
} else {
$present = 'oui';
break;
}
}
if ($present == 'oui') { echo 'il y a au moins deux fois la meme entrée dans la table_concernee'; }

_Marikou
Messages postés
240
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
6 janvier 2006

Bonsoir,

Si tu souhaites ne pas avoir de doublons dans une table, il est préférable d'utiliser la propriété Unique de MySQL. Ainsi, le SGBD fera le boulot à ta place.

A +

floflotz
Messages postés
99
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
1 septembre 2010

Merci pour vos réponses.

J'ai donc tester le code :
$present = 'non';
$requete = mysql_query("SELECT * FROM table_concernee");
while ($row = mysql_fetch_object($requete)) {

if (!in_array($row->champ_a_verifier,$tableau_entre))
{
$tableau_entre[] = $row->champ_a_verifier;
} else {
$present = 'oui';
break;
}
}
if ($present == 'oui') { echo 'il y a au moins deux fois la meme entrée dans la table_concernee'; }

Il me dit que j'ai des doubles mais maintenant comment supprimer les doubles???

merci d'avance
a bientot

----------------------------------------------------------------------------------------

Moteur de recherches, annuaire,... pour BLOGS -->http://www.seek-blog.com
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
Salut,

t'as des codes SQL pures qui te donnent les doublons... vas voir sur le site de SQL...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)