begin process at 2012 05 27 20:41:11
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > TROUVER LES DOUBLONS DANS UNE LISTE DE FICHIERS

TROUVER LES DOUBLONS DANS UNE LISTE DE FICHIERS


 Information sur la source

Note :
7,5 / 10 - par 2 personnes
7,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichier / Disque Classé sous :comparer fichier, comparateur fichier, trouver doublons, doublons Niveau :Débutant Date de création :23/11/2010 Date de mise à jour :29/11/2010 10:38:54 Vu :2 929

Auteur : soobook

Ecrire un message privé
Commentaire sur cette source (20)
Ajouter un commentaire et/ou une note

 Description

Bonjour à tous.

Je passe à cette fonction une liste de fichiers et elle me retourne un tableau des doublons trouvés.

Source

  • <pre>
  • <?php
  • function compareFiles($files) {
  • // On hache le fichier et on utilise cette valeur comme index d'un tableau.
  • // Ainsi, les fichiers identiques sont automatiquement regroupés.
  • $hash = array();
  • foreach ($files as $value) {
  • $hash[hash_file("md5", $value)][] = $value;
  • }
  • $tmp = array();
  • //On ne récupère que les doublons.
  • foreach ($hash as $value) {
  • if (sizeof($value) > 1)
  • $tmp[] = $value;
  • }
  • return $tmp;
  • }
  • //Test :
  • $files = array("work/01.avi",
  • "work/02.avi",
  • "work/02_copie.avi",
  • "work/03.avi",
  • "work/04.wmv",
  • "work/04_copie.txt", //Ca marche aussi si on change l'extension du fichier.
  • "work/05.wmv",
  • "work/05_copie.wmv");
  • print_r(compareFiles($files));
  • /* Voici le résultat obtenu :
  • Array
  • (
  • [0] => Array
  • (
  • [0] => work/02.avi
  • [1] => work/02_copie.avi
  • )
  • [1] => Array
  • (
  • [0] => work/04.wmv
  • [1] => work/04_copie.txt
  • )
  • [2] => Array
  • (
  • [0] => work/05.wmv
  • [1] => work/05_copie.wmv
  • )
  • )
  • */
  • ?>
<pre>
    <?php

    function compareFiles($files) {
        // On hache le fichier et on utilise cette valeur comme index d'un tableau.
        // Ainsi, les fichiers identiques sont automatiquement regroupés.
        $hash = array();
        foreach ($files as $value) {
            $hash[hash_file("md5", $value)][] = $value;
        }
        $tmp = array();
        //On ne récupère que les doublons.
        foreach ($hash as $value) {
            if (sizeof($value) > 1)
                $tmp[] = $value;
        }
        return $tmp;
    }

    //Test :
    $files = array("work/01.avi",
        "work/02.avi",
        "work/02_copie.avi",
        "work/03.avi",
        "work/04.wmv",
        "work/04_copie.txt", //Ca marche aussi si on change l'extension du fichier.
        "work/05.wmv",
        "work/05_copie.wmv");
    print_r(compareFiles($files));

    /* Voici le résultat obtenu :
      Array
          (
              [0] => Array
                  (
                  [0] => work/02.avi
                  [1] => work/02_copie.avi
                  )
              [1] => Array
                  (
                  [0] => work/04.wmv
                  [1] => work/04_copie.txt
                  )
              [2] => Array
                  (
                  [0] => work/05.wmv
                  [1] => work/05_copie.wmv
                  )
          )
     */
    ?>

 Conclusion

Voilà. C'est super gourmand en ressources avec de gros fichiers (j'ai testé avec des vidéos), mais ça a l'air de bien marcher. A utiliser avec parcimonie à mon avis, et pas tel quel.

C'est la première fois que je poste une source et comme plein de gens j'apprends sur le tas, du coup je suis preneur pour tout commentaire qui me permettrai de m'améliorer!


 Historique

29 novembre 2010 10:38:54 :
Mon titre n'était pas assez précis. Cette fonctions sert à trouver les doublons au sein d'une liste de fichiers.

 Sources de la même categorie

SUPPRESSION AUTOMATIQUE DES FICHIERS RAW ORPHELINS APRÈS UN ... par malokaff
UPLOADER DES FICHIER DANSUN DOSSIER, SÉCURISÉ AVEC MOT DE PA... par raizzo
COMPTEUR DE VISITES SUR FICHIER par pierreSabatier
FONCTION RECURSIVE DE DOSSIERS par tefa24600
Source avec Zip CONVERSION DES UNITÉS INFORMATIQUE (O, KIO, MIO, GIO, TIO...... par genetApt151

 Sources en rapport avec celle ci

Source avec Zip RECHERCHE DES DOUBLONS DANS UNE TABLE MYSQL EN SÉLECTIONNANT... par aladec2007

Commentaires et avis

Commentaire de Vonscott le 23/11/2010 18:26:37 8/10

Salut,

Je ne suis pas un expert php, je ne sais pas si cette fonction a déjà été présentée sur ce forum, mais je la trouve intéressante. Seule, elle présente un intérêt moyen, mais intégrée à une class pour vérifier l'existence d'un fichier sur le serveur cela parait pas mal.
Si vraiment c'est "super gourmand" est ce qu'un pro peut donner la solution ?

En tout cas, bonne idée pour moi, simple et efficace

Commentaire de kohntark le 23/11/2010 22:01:27

Salut,

(je n'ai pas testé, juste lu)
"mais intégrée à une class pour vérifier l'existence d'un fichier sur le serveur cela parait pas mal."
Perso ça me parait horrible !! :)
Pour cela il y a is_file() et dérivés, qui ont une rapidité sans commune mesure avec cette fonction.

"A utiliser avec parcimonie à mon avis, et pas tel quel."
Bah non !
Il n'y a pas 36 manières de tester si un fichier est identique à un autre. Le hash est l'une des seules solutions.
Comme tu dis cela demande beaucoup de ressources, mais il n'y a pas trop le choix.
De toute façon ce genre de recherche ne devrait intervenir que dans un contexte d'administration, ce qui laisse la possibilité de "diluer" ces lourdes ressources.

J'aime bien ta façon de procéder, c'est (très) simple, concis, et efficace (pas testé cependant)
Certains ne manqueront pas de te dire que ce n'est pas une véritable source et que tu aurais dû poster ta fonction dans les snippets. Ils n'auront pas totalement tord.

Comme Vonscott je pense qu'une classe implémentant un système plus abouti serait préférable.


Cordialement,

Kohntark-





Commentaire de Dav_c le 24/11/2010 05:21:06

Sans tester.... Ne pas utiliser sur des videos, mais sur une base donner (format txt ou autres ) sa pourrais très bien marcher.

Commentaire de soobook le 24/11/2010 07:37:23

Merci pour vos remarques et pour la note, c'est très sympa.

J'utilise le principe dans une petite classe qui analyse un répertoire et ses sous-dossiers pour trouver les doublons.
Je n'ai cependant posté que le principe sous la forme d'une fonction, le reste n'est pas très intéressant.

Kohntark, en fait je sais pas encore ce que signifie "poster ta fonction dans les snippets"!!! Je regarde sur le net et je ferais mieux la prochaine fois! :-)

Commentaire de neigedhiver le 24/11/2010 15:21:21

Les snippets c'est ici :
http://www.codyx.org/

Commentaire de Vonscott le 25/11/2010 19:58:25

@kohntark

""mais intégrée à une class pour vérifier l'existence d'un fichier sur le serveur cela parait pas mal."
Perso ça me parait horrible !! :)
Pour cela il y a is_file() et dérivés, qui ont une rapidité sans commune mesure avec cette fonction."

Désolé, je voulais dire la meme chose: vérifier l'existence du MEME fichier

Commentaire de Vonscott le 25/11/2010 20:03:06

"De toute façon ce genre de recherche ne devrait intervenir que dans un contexte d'administration"

Je suis pas tout à fait d'accord.
Pourquoi donner du boulot "long et chiant" à quelqu'un si le serveur peut le faire ???.
Une class peut tres bien verifier l'existence du fichier, si oui modifier le lien du nouveau upoload par celui du fichier deja existant

Commentaire de kohntark le 25/11/2010 20:39:05

"Désolé, je voulais dire la meme chose: vérifier l'existence du MEME fichier"
Me doutais un peu, donc, dans le doute .... ^^

@soobook :
Neige a donné la réponse pour les snippets.
On pourrait traduire par : 'bout de code qui répond à une problématique "simple"'
'bout de code' n'a rien de réducteur, bien au contraire, et la fonction que tu proposes y aurait toute sa place.
Même s'il doit y a voir pas mal de classes de ce genre sur Cs je pense que tu devrais poster la tienne, en t'appuyant au besoin sur les manques des autres.

Cordialement,

Kohntark-

Commentaire de Vonscott le 25/11/2010 22:06:01

Pas facile de trouver un bon forum
Entre allht...com avec ses pubs à tout va et une communautée disparue
Asp-p....net et son inorganisation desesperante
et phpcs avec ses habitués austeres qui s'excusent apres t'avoir enterré
Reste quoi ??????????????

Commentaire de neigedhiver le 25/11/2010 22:25:55

Sur PHPCS, les habitués ne sont pas austères : ils sont las. Mais je trouve quand même gonflé de leur en imputer la responsabilité...
Personnellement, si je suis las de phpcs, c'est parce qu'on y trouve toujours les mêmes questions, les mêmes sources, les mêmes problèmes et, pire que tout, le même comportement.
Les mêmes sources : des dizaines pour mapper l'accès à mysql, des dizaines de sources pour mettre en place un livre d'or, gérer des permissions utilisateurs, la pagination des résultats. Dans ces sources, même pas 5% sont correctement écrites, sécurisées, faciles à intégrer, etc.
Les mêmes questions : "comment modifier le contenu d'une liste suivant ce qui est sélectionné dans une autre", "comment conserver les données d'une page à l'autre", et j'en passe.
Les mêmes problèmes : problème de soumission de formulaire, problème de requête sql, problème d'échapement de caractères sur les données issues de la bdd, etc (exemples tirés de la page d'accueil)
Les mêmes comportements : ceux qui débarquent sans dire bonjour et exigent une réponse rapide avec du code tout fait à leur premier message, ceux qui, justement, donnent du code tout fait aux boulets qui l'exigent, ceux qui ne répondent pas aux questions quand on cherche à les aider, etc j'en passe.
Et il faut y ajouter tous les problèmes qui pourraient être résolus si les personnes prenaient quelques minutes pour chercher dans la doc (qu'ils ne savent pas utiliser du fait qu'ils ne l'utilisent jamais), et tous ceux qui pensent que toutes les réponses sont sur le net et gratuites (non, les meilleurs tutoriaux qui existent s'appellent des livres et s'échangent en librairie contre des euros).

En ce qui me concerne, je n'ai aucun scrupule à "enterrer" un code, un tuto quand il est pourri. Je pense que c'est rendre service à son auteur que de lui dire qu'il n'a pas produit quelque chose de qualité. C'est de l'hypocrisie que de lui dire que c'est bien, merci de l'intention.
Mon expérience personnelle est la suivante : j'ai passé plusieurs années à chercher les réponses à mes problèmes dans les livres et dans les docs. Sans poser la moindre question sur le net (faut dire, à l'époque, c'était du 56k !). Et j'ai encore attendu quelques années avant de poster des sources sur le net. Ce que j'ai appris, je le dois essentiellement aux auteurs que j'ai rémunérés en achetant leurs livres et aux développeurs de PHP et MySQL qui ont rédigé les docs, ainsi qu'aux auteurs des spécifications et autres RFC. Très peu aux forums.

Alors les habitués austères, quand ils prennent un peu de recul et qu'ils constatent que 99% des personnes qui développent des sites web pour leur plaisir ne font aucun effort et attendent simplement que la solution leur arrive sans chercher vraiment, ben comme dirait Perceval : "On en a gros". Les habitués austères sont aussi passés par la case newbie. Mais s'ils ne sont pas restés dedans (parce que pour ma part j'estime avoir progressé depuis mon premier echo "Hello world !"), c'est parce qu'ils se sont sortis les doigts du cul et qu'ils ont cherché à apprendre, à solutionner leurs problèmes, etc.

L'habitué austère que je suis, en a un peu marre d'être considéré comme un habitué austère et aimerait bien que les boulets comprennent un peu son point de vue quand il massacre une source pourrie au premier commentaire ou qu'il envoit chier quand la personne n'a pas pris la peine de lire la doc d'une fonction avant de l'utiliser.

L'habitué austère que je suis vous souhaite une bonne soirée.


Commentaire de soobook le 29/11/2010 10:56:49

Bonjour.
J'ai renommé la source pour préciser un peu le contexte dans lequel je l'ai écrite.

@kohntark : ok (et merci) pour les snippets. Quant à ma classe, je vais voir, mais je crois pas qu'elle apporte grand chose de plus que la fonction...

@neigedhiver : et du coup vous en pensez quoi de ma source?

Tout cela n'a pas grand chose a avoir avec ma source. La chose de sûre c'est que ça ne me dérange pas si on la descend, tant que c'est justifié ET expliqué.

Concernant la redondance des forums, elle ne me dérange pas : perso toutes les explications ne me parlent pas, elle sont de plus rarement exhaustive. Quand je cherche quelque chose, je lis toujours plusieurs réponses, et ça me permet souvent d'envisager les choses sous des angles non envisagés. J'ai encore énormément de choses à apprendre.
Ce qui me gêne plus c'est la digression, ce que nous faisons ici :-). Chaque fois que l'on cherche quelque chose, on tombe sur des sujets de huit pages qui parlent de tout et de rien. Il est assez probable que les gens qui vont passer ici ne seront pas particulièrement à la recherche d'un débat.

Je veux surtout pas lancer un vieux débat, et j'ai aussi une forte tendance à digresser, du coup ça compte pour moi le premier.

Commentaire de LeFauve42 le 29/11/2010 11:13:47

Bonjour,

> Il n'y a pas 36 manières de tester si un fichier est identique à un autre. Le hash est l'une des seules solutions.

Le hash ne permet pas de tester que deux fichiers sont identiques. Il permet de tester qu'ils sont differents (si ils ont un hash different) mais deux fichiers peuvent tres bien avoir un hash identique et etre differents.

Je pense que tu peux accelerer grandement ton programme en commencant par tester les tailles des fichiers (si la taille de deux fichiers est differente, ils sont forcement differents).
Ensuite, tu peux hasher les fichiers de taille identiques (si il y en a) pour voir si ils sont differents.
En toute rigueur, si tu veux vraiment etre sur, quand tu trouves plusieurs fichiers avec un hash identique, tu devrais les comparer deux par deux octet a octet (c'est le seul moyen exhaustif de comparer deux fichiers).

> Les mêmes questions : "comment modifier le contenu d'une liste s...
> Les mêmes problèmes : problème de soumission de formulaire, prob...
> Les mêmes comportements : ceux qui débarquent sans dire bonjour et ...
> Et il faut y ajouter tous les problèmes qui pourraient être résolus...

Comme je te comprend :o)

Est-ce qu'on ne pourrait pas reduire sensiblement le probleme en :
- Redigeant un FAQ
- Banissant pour 48h du forum toute personne posant une question dont la reponse est dans le FAQ (avec un message leur expliquant pourquoi)

Je sais, c'est plus facile a dire qu'a faire, mais entre ca ou se retrouver avec un forum ininteressant ca vaut peut-etre le coup de se poser la question, quite a faire grincer quelques dents...

Eric

Commentaire de neigedhiver le 29/11/2010 14:31:36

@Soobook : du coup, je sais pas, parce que j'ai pas regardé ton code source en détail. J'ai juste survolé, au début, les commentaires, notamment ceux de Kohntark, qui m'ont permis de comprendre comment tu avais écrit ton code etc. Je lui fais confiance, la source n'est pas suffisament complexe (ce n'est pas péjoratif) pour qu'il y ait des choses à explorer que K. n'aurait pas vues, à priori.

La digression que j'ai fait ici (j'en assume la responsabilité) vient du fait qu'on ne peut pas le faire ailleurs. Les forums de CS sont suffisament mal foutus pour que les discussions sur du long terme ne peuvent réellement exister, d'ailleurs, c'est tout juste si elles auraient une place où être... Alors il reste les commentaires des sources, des tutos, et les discussion du forum éphémères qui s'éteignent en moins d'une semaine pour la plupart.

@LeFauve42 : faut pas se leurrer... Des nouvelles fonctionnalités sur CS, c'est pas pour demain... Depuis le temps que j'y suis, les nouveautés que j'ai vues sont presque insignifiantes : liste de ses sources, redimensionnement du textarea pour poster sur le forum, prévisualisation sur le forum... J'ai pas souvenir avoir vu autre chose...

Commentaire de hornetbzz le 29/11/2010 18:02:46

je n'ai pas du tout comprendre mais pour moi, le but de ce script est de réaliser de l'admin, donc du perl ou du shell, mais pas du php. ou au pire un cgi.
Comme tu dis, c'est le genre de manip gourmandes en ressources, donc perl ou shell te permettraient une execution en cronjob et ainsi, si tu veux garder ton php, alléger l'execution qui ne s'opérera que sur les éléments de la liste non dédoublonnée.

Commentaire de neigedhiver le 29/11/2010 21:00:13

@HornetBzz : "donc du perl ou du shell, mais pas du php. ou au pire un cgi."
Un CGI en quel langage ? Perl, bash, python, ruby, java, ... ?
CGI n'étant pas un langage de script... Shell non plus d'ailleurs.

Juste pour info : un script PHP peut aussi être exécuté avec cron, je vois pas où est le problème. Certains utilisent PHP comme langage de script pour des tâches d'admin sur un serveur, il n'y a aucune honte à ça : ce n'est certes pas la vocation première de PHP, mais bon, c'est quand même possible.

Commentaire de hornetbzz le 29/11/2010 22:38:37

@neigedhiver:
tu joues un peu sur les abus de languages dont j'ai effectivement usé et qui t'ont visiblement dérouté...
Moi aussi j'utilise du php-cli en cron mais franchement, il y a souvent mieux à faire. Donc ce n'est pas le genre de "conseil" que j'étalerai.
Et oui, c'est sûr... tout est possible : on peut aussi créer un site web en netcat si on veut. Mais vu le script en question, ce n'est pas une question de honte ou pas, je me permet juste de douter un peu des possibilités de gérer les aspects sécurité avec de l'admin en php-cli.

D'où une préférence nette et affichée pour le distingo suivant: php<=> servir des pages web, shell (bash/perl...) <=> admin, et eventuellement un cgi s'il y avait une "passerelle" à établir. Et non, cgi n'est pas un langage... Merci pour cette info qui m'avait visiblement échappé.

Quand on écrit ce genre de script en php, ça laisse présager un serveur sur lequel on n'a pas franchement la main, et pour lequel PHP vient à la rescousse, en constituant un embryon de solution, mais il n'en reste pas moins que bash/perl/python sont mieux adaptés que php selon moi (C'est mon seul message, certes peut-être mal exprimé)
Ah si, sauf si tu inclus ssh2 (pecl) dans php :-). Allez stop, je diverge (en un mot).

J'espère que c'est plus clair et que tu auras noté le ton plus humoristique qu'ironique. N'oublions pas qu'il est bon de rire parfois !


@soobook
Le code en lui-même me semble très bien écrit.
Mais j'avoue ne pas bien comprendre l'intérêt de ton source, car comparer des fichiers, c'est bien... mais dans quel but/contexte ? Il faudrait que tu précises un peu.
Si c'est pour de l'admin, comme tu as justement remarqué, les ressources consommées sont lourdes. D'où la suggestion de la création d'une liste des fameux doublons par un cronjob (en bash/perl ou même ton script quasiment tel quel..). Quitte à récupérer cette liste en php dans ton interface web. Mais éviter de mélanger l'interface web avec le besoin de créer la liste des doublons. Et lancer une mise à jour de la fameuse liste à l'instant t, mais toujours moins lourd que de créer intégralement en Live la liste en question. C'est juste une idée. Encore une fois, tout dépend du contexte et de l'objectif.

Commentaire de neigedhiver le 29/11/2010 22:58:20

@HornetBzz : je n'ai pas été "dérouté", mais je voulais apporter ces précisions pour que, justement, un débutant, un profane, ne soit pas dérouté ou confus et ne se croie limité par l'utilisation de PHP. Ça n'avait rien de personnel ;)
Je ne recommande pas forcément PHP non plus pour des tâches d'admin. Cependant, pour l'avoir moi-même utilisé à une époque de cette manière, il me paraît important de préciser qu'on peut quand même et que ça n'a rien de monstrueux. Quand PHP est le seul langage qu'on maîtrise, il est tout à fait légitime de l'utiliser à la place d'un autre langage qu'on ne connait pas et qui serait pourtant plus adapté.
Parce que si PHP est facile d'accès aux débutants, ce n'est pas vraiment le cas de bash ou de perl qui n'ont pas pour vocation la lisibilité, mais la concision (laquelle est généralement au détriment de la lisibilité).
Je rappelle juste que :
On peut écrire des applications graphiques avec bash, on peut même faire un site web avec. De même avec Python, Perl, Rubis, PHP : tous ces langages peuvent s'utiliser aussi bien en ligne de commande, qu'en module/extension de serveur web ou de moteur d'application avec GUI... A chacun de voir selon ce qu'il a à faire le langage le plus adapté, en fonction des capacités, des contraintes de l'environnement de dév/prod, etc.

J'arrête là pour le HS, SooBook va finir par faire franchement la gueule ^^

Commentaire de soobook le 01/12/2010 09:09:00

@neigedhiver : ne vous inquiétez pas, je vais pas faire la gueule. Le truc c'est juste que j'ai un goût immodéré pour les débats, du coup après je perd un temps fou à répondre dans les forums!!!

En fait je ne comprend que superficiellement vos derniers posts. Faut que je relise une ou deux fois et que je cherche sur le net.
Honnêtement, j'ai suffisamment à apprendre avec PHP/JS/CSS/HTML pour l'instant. Je comprend l'importance de tout ça, mais j'y suis pas encore.

Quand au contexte de la source, il est tout con. J'ai un dossier de quelque centaines d'images dont je dois faire une galerie. Sauf qu'il y a plein de doublons. J'ai donc écris ce script pour nettoyer mon dossier.
Je récupère la liste des doublons et je l'affiche avec des miniatures (et je ne suis pas tombé sur deux images différentes avec le même hash).
Grâce à des boutons radios je choisis l'exemplaire à conserver, puis je supprime les autres.
Il s'agit donc d'un script d'administration qui ne sera utilisé que très ponctuellement (voire plus jamais).

Je pense que cette source n'est intéressante que pour un débutant, pour les deux concepts suivants, que perso j'ai compris il n'y a pas si longtemps :
- hasher des choses pour les comparer.
- utiliser l'index d'un tableau pour trier facilement des choses.  
C'est simpliste, mais c'est clair (en tout cas je trouve). C'est pour ça que je l'ai posté.

Je suis sur que vous êtes tous déçus!!! :-D

Commentaire de hornetbzz le 01/12/2010 13:10:50 7/10

Meuh non on n'est pas déçus. Au contraire, j'applaudis cette belle transparence teintée d'humilité.
Donc comme évoqué un peu longuement, php n'est pas forcément l'outil répondant le mieux au besoin évoqué, mais bon, si ça le fait ;-)

Commentaire de soobook le 02/12/2010 19:06:13

C'est joliment dit!!!
Je m'autorise un lol!!!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Supprimer les doublons [ par Nerdz ] Bonjour,J'insère plusieurs valeur dans un tableau ( array(); ) et j'aimerais savoir comment supprimer les valeurs qui sont en double !Ya-t-il une fonc taux de doublons [ par semouna ] bonsoir j'aimerai calculer le taux de doublons d'une table en passant par une requète sous accessmerci doublons [ par rafou77 ] bonjour,j'ai une table clients (numcli, nomcli)par ex: 123 toto 456 tata 123 toto saje ne sais pas comment supprimer les doublons su Lister une bdd sans les doublons [ par NewSky ] Bonjour,Je suis &#224; la recherche d'une fa&#231;on pour lister une colonne d'une bdd MySQL sans les doublons.Je m'explique:j'ai une base avec 2 colo doublons [ par krovomite ] Bonjour, je voulais savoir si il n'exitste pas une fonction permettant pour chaque ligne d'un tableau mysql, il serait possible de retourner un bool&# Afficher seulement les doublons [ par crislemon ] Bonjour a tous !Contairement &#224; la fonction DISTINCT j'aimerai afficher seulement les doublons de ma table et non les supprimer .Comment faut il f Enlever doublons sous mysql [ par rich25200 ] bonjour, J'aimerai enlever des doublons dans ma BDD comment faire ? merci Doublons [ par ldevun ] Bonjour,Je suis entrain de créé un catalogue et je voudrais savoir si à un produit on peut affectuer plusieurs catégories, plusieurs sous catégorie? C Eviter les doublons à l'insertion [ par spyro666 ] Bonjour tout le monde,j'ai un petit problème avec MySQL... J'ai en effet une table que j'ai créé pour qu'il n'y ait pas deux fois la même valeur pour Sql doublons [ par EFFACEUR ] Bonjour,ma table est membres,Je voudrais afficher tout les doublons de meme nom? Comment faire, c est pour supprimer plusieurs compte inutile, merci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales