Changeset 64 for trunk/picture.php


Ignore:
Timestamp:
Sep 5, 2003, 9:27:45 PM (21 years ago)
Author:
z0rglub
Message:

Correcting a bug in special categories (favorites, most seen, most
recent... non numeric categories) : when a picture is linked to more than
one category, it's only displayed once.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/picture.php

    r61 r64  
    4141$query = 'SELECT id,date_available,comment,hit,keywords';
    4242$query.= ',author,name,file,date_creation,filesize,width,height';
    43 $query.= ',storage_category_id,category_id';
     43$query.= ',storage_category_id';
     44if ( is_numeric( $page['cat'] ) )
     45{
     46  $query.= ',category_id';
     47}
    4448$query.= ' FROM '.PREFIX_TABLE.'images';
    45 $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
     49$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category AS ic ON id = ic.image_id';
    4650$query.= $page['where'];
    4751$query.= ' AND id = '.$_GET['image_id'];
     
    6569$page['storage_category_id'] = $row['storage_category_id'];
    6670// retrieving the number of the picture in its category (in order)
    67 $query = 'SELECT id';
     71$query = 'SELECT DISTINCT(id)';
    6872$query.= ' FROM '.PREFIX_TABLE.'images';
    69 $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
     73$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category AS ic ON id = ic.image_id';
    7074$query.= $page['where'];
    7175$query.= $conf['order_by'];
     
    129133    $query = 'SELECT id';
    130134    $query.= ' FROM '.PREFIX_TABLE.'images';
    131     $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
     135    $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category  AS ic';
     136    $query.= ' ON id = ic.image_id';
    132137    $query.= $page['where'];
    133138    $query.= $conf['order_by'];
     
    212217{
    213218  $prev = $page['num'] - 1;
    214   $query = 'SELECT id,name,file,tn_ext,storage_category_id';
     219  $query = 'SELECT DISTINCT(id),name,file,tn_ext,storage_category_id';
    215220  $query.= ' FROM '.PREFIX_TABLE.'images';
    216   $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
     221  $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category AS ic ON id=ic.image_id';
    217222  $query.= $page['where'];
    218223  $query.= $conf['order_by'];
     
    458463}
    459464//------------------------------------ admin link for information modifications
    460 if ( $user['status'] == "admin" and is_numeric( $page['cat'] ) )
     465if ( $user['status'] == 'admin' )
    461466{
    462467  $vtp->addSession( $handle, 'modification' );
     
    470475{
    471476  $next = $page['num'] + 1;
    472   $query = 'SELECT id,name,file,tn_ext,storage_category_id';
     477  $query = 'SELECT DISTINCT(id),name,file,tn_ext,storage_category_id';
    473478  $query.= ' FROM '.PREFIX_TABLE.'images';
    474   $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
     479  $query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category AS ic ON id=ic.image_id';
    475480  $query.= $page['where'];
    476481  $query.= $conf['order_by'];
Note: See TracChangeset for help on using the changeset viewer.