Ganjarno a écrit:
Alors alors ? ;o)
Je n'ai pas eu le temps... J'espère demain.
Hors ligne
Attention: Le post est un peu long... à cause d'analyse de données.
requête SQL:
SELECT DISTINCT ( name ), hex( name ) FROM phpwebgallery_images AS i INNER JOIN phpwebgallery_image_category AS ic ON id = ic.image_id WHERE ic.category_id =6 ORDER BY name ASC LIMIT 1 , 100
Résultats bien dans l'ordre:
La Rochelle 1990 1 4C6120526F6368656C6C6520313939302031
Spectacle 1994 01 537065637461636C652031393934203031
Spectacle 1994 02 537065637461636C652031393934203032
Spectacle 1994 03. 537065637461636C6520313939342030332E
...
Spectacle 2005 13 537065637461636C652032303035203133
Spectacle Debut 01 537065637461636C65204465627574203031
Spectacle La Rochelle 1987 537065637461636C65204C6120526F6368656C6C6520313938...
Ce qui est bien trié, d'accord. Pas d'accord, ne t'inquiètes pas. Considère pour l'instant que c'est vrai.
Par doute, je suis retourné sur ta galerie qui contient 87 images maintenant dans cette catégorie...
Et qu'ai-je vu?
Ceci:
La Rochelle 1990 1 4C6120526F6368656C6C6520313939302031
Spectacle 1993 01 537065637461636C652031393933203031
Spectacle 1993 02 537065637461636C652031393933203032
Spectacle 1993 03 537065637461636C652031393933203033
Spectacle 1993 04 537065637461636C652031393933203034
Spectacle 1993 05 537065637461636C652031393933203035
Spectacle 1993 06 537065637461636C652031393933203036
Spectacle 1993 07 537065637461636C652031393933203037
Spectacle 1994 01 537065637461636C652031393934203031
Spectacle 1994 02 537065637461636C652031393934203032
Spectacle 1994 03. 537065637461636C6520313939342030332E
Spectacle 1994 04 537065637461636C65203139393420303420
Spectacle 1994 05 537065637461636C65203139393420303520
Spectacle 1994 06 537065637461636C65203139393420303620
Spectacle 1995 01 537065637461636C652031393935203031
Spectacle 1995 02 537065637461636C652031393935203032
Spectacle 1995 03 537065637461636C65203139393520303320
Spectacle 1995 04 537065637461636C65203139393520303420
Spectacle 1995 05 537065637461636C65203139393520303520
Spectacle 1995 06 537065637461636C65203139393520303620
Spectacle 1995 07 537065637461636C65203139393520303720
Spectacle 1995 08 537065637461636C65203139393520303820
Spectacle 1996 01 537065637461636C65203139393620303120
Spectacle 1997 01 537065637461636C652031393937203031
Spectacle 1997 02 537065637461636C652031393937203032
Spectacle 1997 03 537065637461636C652031393937203033
Spectacle 1997 04 537065637461636C65203139393720303420
Spectacle 1997 04 537065637461636C652031393937203034
Spectacle 1997 05 537065637461636C65203139393720303520
Spectacle 1997 06 537065637461636C65203139393720303620
Spectacle 1997 07 537065637461636C65203139393720303720
Spectacle 1997 08 537065637461636C65203139393720303820
Spectacle 1997 09 537065637461636C65203139393720303920
Spectacle 1997 10 537065637461636C65203139393720313020
Spectacle 1997 11 537065637461636C65203139393720313120
Spectacle 1998 01 537065637461636C65203139393820303120
Spectacle 1998 02 537065637461636C65203139393820303220
Spectacle 1998 03 537065637461636C65203139393820303320
Spectacle 1999 01 537065637461636C652031393939203031
Spectacle 1999 01 537065637461636C652031393939203031
Spectacle 1999 02 537065637461636C652031393939203032
Spectacle 1999 02 537065637461636C652031393939203032
Spectacle 1999 03 537065637461636C652031393939203033
Spectacle 1999 03 537065637461636C652031393939203033
Spectacle 1999 04 537065637461636C652031393939203034
Spectacle 1999 05 537065637461636C652031393939203035
Spectacle 2000 01 537065637461636C652032303030203031
Spectacle 2000 01 537065637461636C652032303030203031
Spectacle 2000 02 537065637461636C652032303030203032
Spectacle 2001 01 537065637461636C652032303031203031
Spectacle 2001 01 537065637461636C652032303031203031
Spectacle 2001 01 537065637461636C652032303031203031
Spectacle 2001 02 537065637461636C652032303031203032
Spectacle 2001 02 537065637461636C652032303031203032
Spectacle 2001 03 537065637461636C652032303031203033
Spectacle 2001 03 537065637461636C652032303031203033
Spectacle 2003 01 537065637461636C652032303033203031
Spectacle 2003 02 537065637461636C652032303033203032
Spectacle 2005 01 537065637461636C652032303035203031
Spectacle 2005 01 537065637461636C652032303035203031
Spectacle 2005 02 537065637461636C652032303035203032
Spectacle 2005 02 537065637461636C652032303035203032
Spectacle 2005 03 537065637461636C652032303035203033
Spectacle 2005 04 537065637461636C652032303035203034
Spectacle 2005 05 La Haine 537065637461636C652032303035203035204C6120486169...
Spectacle 2005 06 Comme un Garcon 537065637461636C65203230303520303620436F6D6D6520...
Spectacle 2005 07 Everytime 537065637461636C65203230303520303720457665727974...
Spectacle 2005 08 Medley Beatles 537065637461636C652032303035203038204D65646C6579...
Spectacle 2005 09 Mistral Gagnant 537065637461636C652032303035203039204D6973747261...
Spectacle 2005 10 Mourir Demain 537065637461636C652032303035203130204D6F75726972...
Spectacle 2005 11 Tous Les cris les SOS 01 537065637461636C65203230303520313120546F7573204C...
Spectacle 2005 11 Tous Les cris les SOS 02 537065637461636C65203230303520313120546F7573204C...
Spectacle 2005 12 537065637461636C652032303035203132
Spectacle 2005 13 537065637461636C652032303035203133
Spectacle 3 537065637461636C652033
Spectacle 4 537065637461636C652034
Spectacle 6 537065637461636C652036
Spectacle 7 537065637461636C652037
Spectacle 8 537065637461636C652038
Spectacle 9 537065637461636C652039
Spectacle Debut 01 537065637461636C65204465627574203031
Spectacle debut 2 537065637461636C652064656275742032
Spectacle debut 3 537065637461636C652064656275742033
Spectacle debut 4 537065637461636C652064656275742034
Spectacle La Rochelle 537065637461636C65204C6120526F6368656C6C65
Spectacle La Rochelle 1987 537065637461636C65204C6120526F6368656C6C65203139...
Spectacle La Rochelle 2 537065637461636C65204C6120526F6368656C6C652032
Ce qui pour moi est parfaitement dans l'ordre...
Alors si ce qui te gêne est ceci:
Spectacle 2005 13 537065637461636C652032303035203133
Spectacle 3 537065637461636C652033
Spectacle 4 537065637461636C652034
Spectacle 6 537065637461636C652036
Spectacle 7 537065637461636C652037
Spectacle 8 537065637461636C652038
Spectacle 9 537065637461636C652039
Spectacle Debut 01 537065637461636C65204465627574203031
Spectacle debut 2 537065637461636C652064656275742032
Il faut savoir qu'un nom, c'est du texte et alors...
3 est après 2, c'est toujours vrai.
3 est après 2005, c'est normal, c'est du texte et comme dans un dictionnaire: B est après AZZZZZ ...
D est après 9
d est après D...
etc.
Leurs codes "Hexa" prouvant mon propos sont en caractères gras dans ce qui "te gêne".
Un peu plus, notre ami Ganjarno, m'aurait fait douter de MySQL.
8-)
Hors ligne
Ce que je comprend pas c'est que qd je vais sur http://zesonic.free.fr/galerie/category.php?cat=6, les photos sont pas ds l'ordre...
J'ai testé sous IE, opéra, logué, pas logué bref, c'est aps ds l'ordre..
Spectacle 1993 01
0 Commentaires Spectacle 1993 02
0 Commentaires Spectacle 1993 03
0 Commentaires Spectacle 1993 04
0 Commentaires Spectacle 1993 05
0 Commentaires Spectacle 1993 06
0 Commentaires Spectacle 1993 07
0 Commentaires Spectacle 1994 04
3 Commentaires Spectacle 1994 05
0 Commentaires Spectacle 1994 06
0 Commentaires Spectacle 1995 03
0 Commentaires Spectacle 1995 04
0 Commentaires Spectacle 1995 05
0 Commentaires Spectacle 1995 06
0 Commentaires Spectacle 1995 07
0 Commentaires Spectacle 1995 08
0 Commentaires Spectacle 1996 01
0 Commentaires Spectacle 1997 04
0 Commentaires Spectacle 1997 05
0 Commentaires Spectacle 1997 06
0 Commentaires Spectacle 1997 07
0 Commentaires Spectacle 1997 08
0 Commentaires Spectacle 1997 09
0 Commentaires Spectacle 1997 10
0 Commentaires Spectacle 1997 11
0 Commentaires Spectacle 1998 01
0 Commentaires Spectacle 1998 02
0 Commentaires Spectacle 1998 03
0 Commentaires Spectacle 2003 01
0 Commentaires Spectacle 2003 02
0 Commentaires Spectacle 2005 06 Comme un Garcon
0 Commentaires Spectacle 2005 07 Everytime
0 Commentaires Spectacle 2005 08 Medley Beatles
0 Commentaires Spectacle 2005 09 Mistral Gagnant
0 Commentaires Spectacle 2005 10 Mourir Demain
0 Commentaires Spectacle 2005 11 Tous Les cris les SOS 02
0 Commentaires Spectacle 3
0 Commentaires Spectacle 4
3 Commentaires Spectacle 6
0 Commentaires Spectacle 7
0 Commentaires Spectacle 8
0 Commentaires Spectacle 9
0 Commentaires Spectacle debut 2
1 Commentaires Spectacle debut 3
1 Commentaires Spectacle debut 4
2 Commentaires Spectacle La Rochelle
1 Commentaires Spectacle La Rochelle 2
0 Commentaires La Rochelle 1990 1
2 Commentaires Spectacle 1994 01
0 Commentaires Spectacle 1994 02
0 Commentaires Spectacle 1994 03.
0 Commentaires Spectacle 1995 01
0 Commentaires Spectacle 1995 02
0 Commentaires Spectacle 1997 01
0 Commentaires Spectacle 1997 02
0 Commentaires Spectacle 1997 03
0 Commentaires Spectacle 1997 04
0 Commentaires Spectacle 1999 01
1 Commentaires Spectacle 1999 01
0 Commentaires Spectacle 1999 02
1 Commentaires Spectacle 1999 02
0 Commentaires Spectacle 1999 03
2 Commentaires Spectacle 1999 03
0 Commentaires Spectacle 1999 04
0 Commentaires Spectacle 1999 05
0 Commentaires Spectacle 2000 01
1 Commentaires Spectacle 2000 01
0 Commentaires Spectacle 2000 02
0 Commentaires Spectacle 2001 01
6 Commentaires Spectacle 2001 01
1 Commentaires Spectacle 2001 01
0 Commentaires Spectacle 2001 02
1 Commentaires Spectacle 2001 02
0 Commentaires Spectacle 2001 03
1 Commentaires Spectacle 2001 03
1 Commentaires Spectacle 2005 01
1 Commentaires Spectacle 2005 01
1 Commentaires Spectacle 2005 02
1 Commentaires Spectacle 2005 02
1 Commentaires Spectacle 2005 03
0 Commentaires Spectacle 2005 04
1 Commentaires Spectacle 2005 05 La Haine
0 Commentaires Spectacle 2005 11 Tous Les cris les SOS 01
0 Commentaires Spectacle 2005 12
0 Commentaires Spectacle 2005 13
0 Commentaires Spectacle Debut 01
0 Commentaires Spectacle La Rochelle 1987
0 Commentaires
Franchement, je comprend pas...
Hors ligne
C'est ça:
1 Commentaires Spectacle La Rochelle 2
0 Commentaires La Rochelle 1990 1
2 Commentaires Spectacle 1994 01
Active la trace SQL
// show_queries : montrer les requêtes SQL et le temps d'exécution de
// chacune
$conf['show_queries'] = false;
dans le config_local
Copie les ordres exécutés dans un post...
Enlève la trace.
Je ne pourrai pas regarder ça tout de suite...
Mais ou je reprendrai dans quelques jours
ou un autre de l'équipe viendra faire l'analyse...
Tordu le coup quand même?
(La requête exécuté n'est pas celle à laquelle je pense, et pourtant il n'y en a pas 36).
Hors ligne
[1]
SELECT param,value
FROM phpwebgallery_config
;
(this query time : 0.004 s)
(total SQL time : 0.004 s)
[2]
SELECT user_id,expiration,NOW() AS now
FROM phpwebgallery_sessions
WHERE id = 'xxxxxxxxxx'
;
(this query time : 0.013 s)
(total SQL time : 0.017 s)
[3]
SELECT id AS id
, username AS username
, password AS password
, mail_address AS email
FROM phpwebgallery_users
WHERE id = '1'
;
(this query time : 0.004 s)
(total SQL time : 0.021 s)
[4]
SELECT ui.*, uc.*
FROM phpwebgallery_user_infos AS ui LEFT JOIN phpwebgallery_user_cache AS uc
ON ui.user_id = uc.user_id
WHERE ui.user_id = '1'
;
(this query time : 0.007 s)
(total SQL time : 0.029 s)
[5]
SELECT COUNT(DISTINCT(image_id)) as total
FROM phpwebgallery_image_category
WHERE category_id NOT IN (-1)
;
(this query time : 0.005 s)
(total SQL time : 0.033 s)
[6]
SELECT name,id,date_last,nb_images,global_rank
FROM phpwebgallery_categories
WHERE 1 = 1
AND (id_uppercat is NULL)
AND id NOT IN (-1)
;
(this query time : 0.007 s)
(total SQL time : 0.040 s)
[7]
SELECT id, name, date_last, representative_picture_id
FROM phpwebgallery_categories
WHERE id_uppercat is NULL
AND id NOT IN (-1)
ORDER BY rank
;
(this query time : 0.001 s)
(total SQL time : 0.041 s)
[8]
SELECT id, path, tn_ext
FROM phpwebgallery_images
WHERE id IN (7,17,54,101,163,201)
;
(this query time : 0.005 s)
(total SQL time : 0.046 s)
[9]
SELECT mail_address
FROM phpwebgallery_users
WHERE id = 1
;
(this query time : 0.001 s)
(total SQL time : 0.047 s)
Suppression de l'ID de la session
Dernière modification par VDigital (2006-04-11 00:11:08)
Hors ligne
[7]
SELECT id, name, date_last, representative_picture_id
FROM phpwebgallery_categories
WHERE id_uppercat is NULL
AND id NOT IN (-1)
ORDER BY rank
;
(this query time : 0.001 s)
(total SQL time : 0.041 s)
Le seul ORDER BY que je vois est BY rank au lieu de BY name...
Hors ligne
Exact...
Comment faire vu que ds le config local j'ai qd meme
<?php
$conf['order_by'] = ' ORDER BY name ASC, file ASC, id ASC';
// show_queries : montrer les requêtes SQL et le temps d'exécution de
// chacune
$conf['show_queries'] = false;
?>
Hors ligne
Donc :
// order_by : comment changer l'ordre d'affichage des images dans une
// catégorie ?
//
// Il y a plusieurs champs qui peuvent servir à ordonner l'affichage :
//
// - date_available : date d'ajout dans la galerie
// - file : le nom du fichier
// - id : l'identifiant unique de l'image
// - date_creation : la date de création
//
// Une fois que vous avez choisi quels champs utiliser, vous devez choisir
// l'ordre croissant ou décroissant sur chaque champ. Exemples :
//
// 1. $conf['order_by'] = " order by date_available desc, file asc";
// va ordonner selon la date d'ajout par ordre croissant, puis sur le nom du
// fichier par ordre croissant
//
// 2. $conf['order_by'] = " order by file asc";
// va ordonner selon le nom du fichier par ordre croissant
//
$conf['order_by'] = ' ORDER BY name ASC, file ASC, id ASC';
est ignoré... ?
Hors ligne
VDigital a écrit:
Essaie ...
$conf['order_by'] = ' ORDER BY name ASC, file ASC, id ASC';
Je ne l'ai jamais essayé cela devrait marcher.
devrait... mais visiblement ignoré, je ne comprends pas mais je ne cherche plus à cette heure ci.
8-)
Hors ligne
[11]
SELECT DISTINCT(id),path,file,date_available
,tn_ext,name,filesize,storage_category_id,average_rate
FROM phpwebgallery_images AS i
INNER JOIN phpwebgallery_image_category AS ic ON id=ic.image_id
WHERE category_id = 10
ORDER BY name ASC, file ASC, id ASC
LIMIT 0,9
;
(this query time : 0.003 s)
(total SQL time : 0.020 s)
Sur mon site de test...
Le bug est à mon avis sur:
SELECT DISTINCT(id),path,file,date_available
(je n'ai pas le temps de tester...)
Il suffirait normalement de coder
SELECT id,path,file,date_available
Où changer pour faire le test?
Faire une recherche dans include/category_default.inc.php de
SELECT DISTINCT(id),path,file,date_available
à remplacer par
SELECT id,path,file,date_available
Et si ça marche tu ouvres un bug dans le BUG Trackers et tu mettras le lien au post...
Explications : DISTINCT(id) est superflu, id suffit. Pire que cela MySQL se "gauffre" car le DISTINCT s'applique bien trop tard à cause du LIMIT.
J'irai à mon retour expliquer le bug sur le forum de developpement de MySQL.
Ils vont rire deux minutes à nos dépends, mais ces l'intérêt de tous.
Mais nous on sait au moins corriger.
Merci de ta patience.
8-)
Hors ligne