J'ai une question qui relève plus de l'algorithmique mais comme c'est un
problème directement lié à une base mysql, je me dis que certains ont
surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une
fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de
l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je
voudrais savoir si il existe une méthode qui permette de ne modifier qu'une
seule ligne lorsqu'on positionne un élément.
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment
où l'utilisateur valide le formulaire, seul le ou les champs "position" de
la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne
toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification
de l'ensemble (ou presque) des lignes de la table lorsque la position d'un
élément est modifiée.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Antoun
michel wrote:
Bonjour,
J'ai une question qui relève plus de l'algorithmique mais comme c'est un problème directement lié à une base mysql, je me dis que certains ont surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je voudrais savoir si il existe une méthode qui permette de ne modifier qu'une seule ligne lorsqu'on positionne un élément.
je ne vois pas bien quelles peuvent être ces contraintes...
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment où l'utilisateur valide le formulaire, seul le ou les champs "position" de la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification de l'ensemble (ou presque) des lignes de la table lorsque la position d'un élément est modifiée.
J'espère avoir été clair.
michel
ça me semble algorithmiquement impossible, sauf si la modification consiste toujours à placer l'élement modifié en premier ou en dernier.
michel wrote:
Bonjour,
J'ai une question qui relève plus de l'algorithmique mais comme c'est un
problème directement lié à une base mysql, je me dis que certains ont
surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une
fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de
l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je
voudrais savoir si il existe une méthode qui permette de ne modifier qu'une
seule ligne lorsqu'on positionne un élément.
je ne vois pas bien quelles peuvent être ces contraintes...
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment
où l'utilisateur valide le formulaire, seul le ou les champs "position" de
la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne
toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification
de l'ensemble (ou presque) des lignes de la table lorsque la position d'un
élément est modifiée.
J'espère avoir été clair.
michel
ça me semble algorithmiquement impossible, sauf si la modification
consiste toujours à placer l'élement modifié en premier ou en dernier.
J'ai une question qui relève plus de l'algorithmique mais comme c'est un problème directement lié à une base mysql, je me dis que certains ont surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je voudrais savoir si il existe une méthode qui permette de ne modifier qu'une seule ligne lorsqu'on positionne un élément.
je ne vois pas bien quelles peuvent être ces contraintes...
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment où l'utilisateur valide le formulaire, seul le ou les champs "position" de la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification de l'ensemble (ou presque) des lignes de la table lorsque la position d'un élément est modifiée.
J'espère avoir été clair.
michel
ça me semble algorithmiquement impossible, sauf si la modification consiste toujours à placer l'élement modifié en premier ou en dernier.
Antoun
si en fait ça le fait en jouant sur les fractales...
La colonne Ordre doit être décimale avec une précision maximale. L'ordre de l'élément modifié est mis à jour comme la moyenne des ordres des deux éléments entre lesquels l'utilisateur souhaite.
En théorie, ça fonctionne sans problème ; en pratique, il y a un moment où tu atteins la limite de la précision du SGBD. Le tout est de remettre tout à plat périodiquement, avant que cette limite ne soit atteinte.
Antoun
si en fait ça le fait en jouant sur les fractales...
La colonne Ordre doit être décimale avec une précision maximale. L'ordre
de l'élément modifié est mis à jour comme la moyenne des ordres des deux
éléments entre lesquels l'utilisateur souhaite.
En théorie, ça fonctionne sans problème ; en pratique, il y a un moment
où tu atteins la limite de la précision du SGBD. Le tout est de remettre
tout à plat périodiquement, avant que cette limite ne soit atteinte.
si en fait ça le fait en jouant sur les fractales...
La colonne Ordre doit être décimale avec une précision maximale. L'ordre de l'élément modifié est mis à jour comme la moyenne des ordres des deux éléments entre lesquels l'utilisateur souhaite.
En théorie, ça fonctionne sans problème ; en pratique, il y a un moment où tu atteins la limite de la précision du SGBD. Le tout est de remettre tout à plat périodiquement, avant que cette limite ne soit atteinte.
Antoun
Denis Beauregard
Le Fri, 21 Apr 2006 21:57:36 +0200, "michel" écrivait dans fr.comp.applications.sgbd:
J'ai une question qui relève plus de l'algorithmique mais comme c'est un problème directement lié à une base mysql, je me dis que certains ont surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je voudrais savoir si il existe une méthode qui permette de ne modifier qu'une seule ligne lorsqu'on positionne un élément.
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment où l'utilisateur valide le formulaire, seul le ou les champs "position" de la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification de l'ensemble (ou presque) des lignes de la table lorsque la position d'un élément est modifiée.
J'espère avoir été clair.
Je ne comprends pas. Pourquoi ne pas donner un exemple ?
Disons qu'on a le tableau de 3 colonnes: A 1 alpha
on aurait
A 3 gamma B 1 delta C 4 beta
Si j'ajoute la ligne D 2 alpha, sa "position" sera virtuelle puisque si je regarde les lignes selon la 1re colonne, la table sera
A 3 gamma B 1 delta C 4 beta D 2 alpha
et si je la regarde selon la colonne 2, ce sera
B 1 delta D 2 alpha A 3 gamma C 4 beta
ceci peu importe où l'élément a été inséré...
Denis
Le Fri, 21 Apr 2006 21:57:36 +0200, "michel" <michel451@hotmail.com>
écrivait dans fr.comp.applications.sgbd:
J'ai une question qui relève plus de l'algorithmique mais comme c'est un
problème directement lié à une base mysql, je me dis que certains ont
surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une
fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de
l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je
voudrais savoir si il existe une méthode qui permette de ne modifier qu'une
seule ligne lorsqu'on positionne un élément.
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment
où l'utilisateur valide le formulaire, seul le ou les champs "position" de
la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne
toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification
de l'ensemble (ou presque) des lignes de la table lorsque la position d'un
élément est modifiée.
J'espère avoir été clair.
Je ne comprends pas. Pourquoi ne pas donner un exemple ?
Disons qu'on a le tableau de 3 colonnes: A 1 alpha
on aurait
A 3 gamma
B 1 delta
C 4 beta
Si j'ajoute la ligne D 2 alpha, sa "position" sera virtuelle puisque
si je regarde les lignes selon la 1re colonne, la table sera
Le Fri, 21 Apr 2006 21:57:36 +0200, "michel" écrivait dans fr.comp.applications.sgbd:
J'ai une question qui relève plus de l'algorithmique mais comme c'est un problème directement lié à une base mysql, je me dis que certains ont surement la réponse ici.
J'ai une table que je souhaiterais la modifier pour implémenter une fonctionnalité de tri libre qui permettrait à l'utilisateur de décider de l'ordre des éléments.
Pour des raisons pratiques liées au code de l'application existante, je voudrais savoir si il existe une méthode qui permette de ne modifier qu'une seule ligne lorsqu'on positionne un élément.
Mmmmh , difficile à expliquer...
En gros, je veux positionner l'élément A juste après l'élément B. Au moment où l'utilisateur valide le formulaire, seul le ou les champs "position" de la ligne A serait modifiés. Il faudrait bien sur que le tri fonctionne toujours après ajout/déplacement/suppression d'un élément.
Pour l'instant je ne vois que des méthodes qui nécessitent la modification de l'ensemble (ou presque) des lignes de la table lorsque la position d'un élément est modifiée.
J'espère avoir été clair.
Je ne comprends pas. Pourquoi ne pas donner un exemple ?
Disons qu'on a le tableau de 3 colonnes: A 1 alpha
on aurait
A 3 gamma B 1 delta C 4 beta
Si j'ajoute la ligne D 2 alpha, sa "position" sera virtuelle puisque si je regarde les lignes selon la 1re colonne, la table sera