Pb pour trier une table

saibe Messages postés 46 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 16 avril 2009 - 12 sept. 2007 à 06:12
seyvapul Messages postés 39 Date d'inscription vendredi 15 juillet 2005 Statut Membre Dernière intervention 4 juin 2017 - 26 sept. 2007 à 10:12
hello tout le monde !
j'ai un problème pour conserver les tries des données d'une table.
j'utilise phpMyAdmin 2.2.0rc4. lorsque je requete avec :
SELECT * FROM table ORDER BY champ1 ASC
il trie correctement la table mais cela ne reste pas en mémoire : si je raffraichis il me remet l'ordre choisi dans la combo de phpMyAdmin
que faut il rajouter pour "updater" la table et conserver l'ordre ?

merci

saibe

6 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 sept. 2007 à 06:30
Salut

attend, c'est un probleme d'utilisation de phpmysql ? (ou quand tu cliques la, il ne fait pas ce que tu veux qu'il fasse... c'est pas vraiment un probleme)
ou un probleme de php ?

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
saibe Messages postés 46 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 16 avril 2009
12 sept. 2007 à 10:07
re,
oui excuse je me suis mal exprimé.
en fait je programme en php et la table ne s'ordonnait po, sans pour autant avoir d'erreurs. donc j'ai fait les même requêtes sous phpmyadmin pour vérifier et là je voyais la table ordonnée correctement; mais après un raffraichissement l'ordre n'était po conservé.
plus j'avance plus je me dis qu'il faut refaire la table entièrement à chaque ordonnance, ou créer une table temporaire.... je continue de chercher...
merci.

saibe
0
seyvapul Messages postés 39 Date d'inscription vendredi 15 juillet 2005 Statut Membre Dernière intervention 4 juin 2017
25 sept. 2007 à 15:44
Si ton problème est de trier un table et d'en garder le trie dans cette table, je peux te proposer la solution que j'utilise sur mon site :

# Création d'une table temporaire identique à la table que tu veux trier.
CREATETABLE`serveur`.`table_tmp`(  ... )ENGINE=MYISAMDEFAULTCHARSET=latin1;

# Copie de tous les éléments de la table d'origine dans la table temporaire avec un classement.
INSERTINTO`server`.`table_tmp`SELECT  * FROM  `serveur`.`table_org` ORDER BY `champ1` ASC;

# Effacement de la table d'origine.

DROPTABLE`serveur`.`table_org`

# Renomage de la table temporaire avec le nom de la table d'origine.
RENAMETABLE`serveur`.`table_tmp`TO`serveur`.`table_org`;

C'est peut être un peu bourin comme méthode mais pour le moment je n'ai pas pris le temps de faire mieux.
Je suis preneur d'autre solution au passage.
0
seyvapul Messages postés 39 Date d'inscription vendredi 15 juillet 2005 Statut Membre Dernière intervention 4 juin 2017
25 sept. 2007 à 15:51
Eratum :





Des espaces manquaient j'ai donc repris ma réponse. Si un Admin pouvait supprimer la première réponse ... s.v.p.




<hr size="2" width="100%" />

Si ton problème est de trier un table et d'en garder le trie dans cette
table, je peux te proposer la solution que j'utilise sur mon site :

# Création d'une table temporaire identique à la table que tu veux trier.
CREATE TABLE`serveur`.`table_tmp`(  ... ) ENGINE=MYISAM DEFAULT CHARSET=latin1;

# Copie de tous les éléments de la table d'origine dans la table temporaire avec un classement.
INSERT INTO`server`.`table_tmp` SELECT  * FROM  `serveur`.`table_org` ORDER BY `champ1` ASC;

# Effacement de la table d'origine.

DROP TABLE`serveur`.`table_org`

# Renomage de la table temporaire avec le nom de la table d'origine.
RENAME TABLE`serveur`.`table_tmp` TO `serveur`.`table_org`;

C'est peut être un peu bourin comme méthode mais pour le moment je n'ai pas pris le temps de faire mieux.
Je suis preneur d'autre solution au passage.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
saibe Messages postés 46 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 16 avril 2009
26 sept. 2007 à 07:37
hello seyvapul !
merci pour ta réponse. En effet maintenant j'ai compris que l'orde n'était pas conservé.
moi j'ai opté pour une autre solution, peut être encore plus bourin;)), mais qui permet à plusieurs utilisateurs d'avoir la table dans différents ordres :
1. création d'un fichier trie_user.ini ou txt qui contient la requete de trie.
2. dans mon php qui affiche la table je récupère la requete du fichier pour l'affichage ordonné.
3. lorsque je clique sur une entête de colonne je génère un nouveau trie_user.ini et je réaffiche.

si les codes t'intéressent je t'envoie tout ça.
on va y arrivé ;))

saibe
0
seyvapul Messages postés 39 Date d'inscription vendredi 15 juillet 2005 Statut Membre Dernière intervention 4 juin 2017
26 sept. 2007 à 10:12
Merci mais je n'ai pas encore besoin de l'affichage, juste d'un tri conservé pour une navigation par enregistrement.
Si j'en ai besoin je ne manquerai pas de te contacter.
0
Rejoignez-nous