Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Ganjarno
2006-04-11 23:23:49

J'ai trouvé un systeme : renommez tte les photos a travers le panneau d'admin...

Si je fais ca, les photos sont dans le bon ordre.

C'est fastidieu mais en attendant de trouvez mieux ;o)

Ganjarno
2006-04-11 10:07:58

Ca marche pas donc.

Mais je sais pas comment ouvrir un bug... ;o)

VDigital
2006-04-11 09:41:05

Ne plus toucher au config_local.



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...

Ganjarno
2006-04-11 09:20:25

$array_cat_directories = array();
 
$query = '
SELECT id,path,file,date_available
       ,tn_ext,name,filesize,storage_category_id,average_rate
  FROM '.IMAGES_TABLE.' AS i
    INNER JOIN '.IMAGE_CATEGORY_TABLE.' AS ic ON id=ic.image_id
  '.$page['where'].'
  '.$conf['order_by'].'
  LIMIT '.$page['start'].','.$page['nb_image_page'].'
;';
//echo '<pre>'.$query.'</pre>';
$result = pwg_query($query);

// template thumbnail initialization
if ( mysql_num_rows($result) > 0 )
{
  $template->assign_block_vars('thumbnails', array());
  // first line
  $template->assign_block_vars('thumbnails.line', array());
  // current row displayed
  $row_number = 0;
}

while ($row = mysql_fetch_array($result))
{
  $thumbnail_url = get_thumbnail_src($row['path'], @$row['tn_ext']);
 
  // message in title for the thumbnail
  $thumbnail_title = $row['file'];
  if (isset($row['filesize']))
  {
    $thumbnail_title .= ' : '.$row['filesize'].' KB';
  }
  // url link on picture.php page
  $url_link = PHPWG_ROOT_PATH.'picture.php?cat='.$page['cat'];
  $url_link.= '&amp;image_id='.$row['id'];
  if ($page['cat'] == 'search')
  {
    $url_link.= '&amp;search='.$_GET['search'];
  }
  else if ($page['cat'] == 'list')
  {
    $url_link.= '&amp;list='.$_GET['list'];
  }
   
  $template->assign_block_vars(
    'thumbnails.line.thumbnail',
    array(
      'IMAGE'              => $thumbnail_url,
      'IMAGE_ALT'          => $row['file'],
      'IMAGE_TITLE'        => $thumbnail_title,
      'IMAGE_TS'           => get_icon($row['date_available']),
     
      'U_IMG_LINK'         => add_session_id($url_link)
      )
    );

  if ($conf['show_thumbnail_caption'])
  {
    // name of the picture
    if (isset($row['name']) and $row['name'] != '')
    {
      $name = $row['name'];
    }
    else
    {
      $name = str_replace('_', ' ', get_filename_wo_extension($row['file']));
    }
    if ($page['cat'] == 'best_rated')
    {
      $name = '('.$row['average_rate'].') '.$name;
    }
   
    if ($page['cat'] == 'search')
    {
      $name = replace_search($name, $_GET['search']);
    }
 
    $template->assign_block_vars(
      'thumbnails.line.thumbnail.element_name',
      array(
        'NAME' => $name
        )
      );
  }
   
  if ($user['show_nb_comments']
      and is_numeric($page['cat'])
      and $page['cat_commentable'])
  {
    $query = '
SELECT COUNT(*) AS nb_comments
  FROM '.COMMENTS_TABLE.'
  WHERE image_id = '.$row['id'].'
    AND validated = \'true\'
;';
    $row = mysql_fetch_array(pwg_query($query));
    $template->assign_block_vars(
      'thumbnails.line.thumbnail.nb_comments',
      array('NB_COMMENTS'=>$row['nb_comments']));
  }

  // create a new line ?
  if (++$row_number == $user['nb_image_line'])
  {
    $template->assign_block_vars('thumbnails.line', array());
    $row_number = 0;
  }
}
?>

Ca c'est mon fichier category_default.inc

Ganjarno
2006-04-11 09:16:00

En tt cas, ca marche tjrs pas :/

Ganjarno
2006-04-11 09:12:50

VDigital a écrit:

Et si ça marche tu ouvres un bug dans le BUG Trackers et tu mettras le lien au post...

On fait ca comment ?

VDigital
2006-04-11 07:45:46

[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-)

Ganjarno
2006-04-11 00:28:26

Ben oué :/

J'ai essaye de ne mettre que name ASC ou file ASC mais j'ai des ordres totalement différents et aucun n'est le bon :/

VDigital
2006-04-11 00:20:44

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-)

VDigital
2006-04-11 00:18:38

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é... ?

Ganjarno
2006-04-11 00:17:35

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;
?>

VDigital
2006-04-11 00:14:59

[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...

Ganjarno
2006-04-10 23:58:26

[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

VDigital
2006-04-10 23:43:18

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).

Ganjarno
2006-04-10 23:06:04

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...

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact