Boumbadaboum Posté 11 Août 2005 Posté 11 Août 2005 Bonjour tout le monde, Un petit truc insupportable, si quelqu'un pouvait m'expliquer : J'utilise cette requête SELECT libelle,urlMotClef FROM definitions ORDER BY urlMotClef elle m'affiche environ 400 definitions par ordre alphabetique. J'ai un probleme avec UNE définition : libelle : béb&eactue; secoué (syndrome du) urlMotClef : bebe-secoue-syndrome donc le classement se fait par urlMotClef, sans aucun accent et j'ai pleins d'autre définitions sur le même modèle. Mais que vient faire cette définition au somment de la liste, devant les A et tout ?? ça gratte ça gratte vous pouvez pas savoir.
Boumbadaboum Posté 11 Août 2005 Auteur Posté 11 Août 2005 (modifié) En plus c'est complètement ouf j'ai essayé de virer les accents, supprimer les espaces, les parenthèses du libellé, alors que de tout façon c'est classé par urlMotClef et j'ai essayé de le classer par libellé aussi rien à faire, elle veut pas décoler de la première place, même devant les A !!! Modifié 11 Août 2005 par Boumbadaboum
MarvinLeRouge Posté 11 Août 2005 Posté 11 Août 2005 Y aurait-il une histoire de "minuscules avant majuscules" là dessous ?
Boumbadaboum Posté 11 Août 2005 Auteur Posté 11 Août 2005 euh non c'est que des minuscules je pige pas du tout
Dan Posté 11 Août 2005 Posté 11 Août 2005 Tu dois avoir un espace avant le nom... c'est je pense la seule raison qui pourrait forcer l'affichage en première position. Si le ORDER BY de mySql ne fonctionnait pas, ça se saurait déjà, non ? Dan
Boumbadaboum Posté 11 Août 2005 Auteur Posté 11 Août 2005 (modifié) non voilà ce qui c'est passé (j'avais vérifié les espaces) : J'ai changé la requête et j'ai expédié la page sur le serveur. Celui ne l'a pas "interprété"(si quelqu'un à la bon terme merci) tout de suite (mais alors vraiment pas tout de suite hein ...). là je viens d'essayer, mais maintenant j'ai un "ç" en première position, je peux le remplacer par un "c" mais c'est vraiment insupportable ces caractères particuliers sur mysql. Une question au passage : y'a t'il un comparatif d'égalité stricte entre deux mots dans les requêtes sql comme par exemple le = entre deux chiffre ? ( pas like qui marche mal) Modifié 11 Août 2005 par Boumbadaboum
Dan Posté 11 Août 2005 Posté 11 Août 2005 Ne dis pas que "like marche mal"... alors que tu l'utilises à contre-sens. Pour l'égalité stricte, il y a tout simplement le signe '=' , comme pour les chiffres. Si tu as des problèmes de caractères "particuliers" c'est que l'encodage n'est pas bon. As-tu défini le charset ? Et quelle version mysql utilises-tu ? Attention à la version 4.1 pour l'encodage des caractères... Dan
Boumbadaboum Posté 11 Août 2005 Auteur Posté 11 Août 2005 bon ça fonctionne c'est le serveur qui ne prend pas en compte les mis à jour dès que l'on télécharge une nouvelle page. ça s'appelle comment ce phénomène? je veux bien une réponse pour la question au dessus svp, sur les comparatifs d'égalité entre expressions régulière.
Dan Posté 11 Août 2005 Posté 11 Août 2005 Et comment as-tu peuplé ta base ? As-tu fait appel à htmlentities() ? Il le faut avec mysql.
Boumbadaboum Posté 11 Août 2005 Auteur Posté 11 Août 2005 As-tu fait appel à htmlentities() ? non pas du tout, ça sert à quoi au juste? Je vais revérifier pour le "=" entre expression régulière mais il me semble que ça ne fonctionnait pas alors j'ai refais mon admin avec un comparatif d'égalité entre id pour être certain de pas avoir de mis à jours doubles (genre accord et accorder)
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant