•  » Plugins
  •  » Utilisation GMAP

#1 2012-07-15 18:43:12

cljosse
Former Piwigo Team
2006-11-12
1167

Utilisation GMAP

Warning:  [mysql error 1064] Erreur de syntaxe près de 'maxValue, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (' à la ligne 1
SELECT paut.tagId, MAX(CAST(pait.value AS DECIMAL(20,17))) AS maxValue, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (((gtest_user_cache_categories pucc
              LEFT JOIN gtest_categories pct ON pucc.cat_id = pct.id)
              LEFT JOIN gtest_image_category pic ON pic.category_id = pucc.cat_id)
              LEFT JOIN gtest_amd_images_tags pait ON pait.imageId = pic.image_id)
              LEFT JOIN gtest_amd_used_tags paut ON pait.numId = paut.numId
            WHERE pucc.user_id = '1'
             AND (paut.tagId = 'magic.GPS.LatitudeNum' OR paut.tagId = 'magic.GPS.LongitudeNum')
             AND pic.image_id IS NOT NULL
             GROUP BY paut.tagId in ....\include\dblayer\functions_mysql.inc.php on line 770

•Système d'exploitation: WINNT
•PHP: 5.3.10 (Montrer les informations) [2012-07-15 18:38:15]
•mysql: 5.5.20-log [2012-07-15 18:38:15]

Salut Grum

Pour d'éviter de chercher:
Pour résoudre ce pb Il faut absolument mettre les valeurs maxValue et minValue entre guillemets
AS 'maxValue'  .... AS 'minValue'
ligne 371, 387 , 402 de gmaps_pip.class.inc.php

A+

Hors ligne

#2 2012-07-15 18:50:40

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: Utilisation GMAP

Je suppose que c'est lié à ta version de MySQL, chez moi je n'ai pas le soucis.
Dans la doc MySQL, je ne trouve pas d'information concernant la nécessité de mettre les alias entre guillemets :-/
Je vais continuer de chercher..

Tu risques d'avoir pas mal de problèmes, j'utilise fréquement les alias ^_^


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#3 2012-07-15 19:08:19

cljosse
Former Piwigo Team
2006-11-12
1167

Re: Utilisation GMAP

Je me souviens plus très bien mais il me semble que cela à voir aussi avec le CAST...
Cela fait plusieurs mois de cela :-) ...

Dernière modification par cljosse (2012-07-15 19:08:38)

Hors ligne

#4 2012-07-15 20:53:25

cljosse
Former Piwigo Team
2006-11-12
1167

Re: Utilisation GMAP

Après reflexion...
Maxvalue et minvalue sont des nouveaux mot clefs utilisés dans mysql5.5
voir http://dev.mysql.com/doc/refman/5.5/en/ … range.html

Hors ligne

#5 2012-07-28 19:23:03

Gembrot
Invité

Re: Utilisation GMAP

#6 2012-07-28 19:23:53

Gembrot
Invité

Re: Utilisation GMAP

MAXVALUE existe deja dans mysql 5.1
http://dev.mysql.com/doc/refman/5.1/en/ … tions.html

#7 2012-07-28 19:42:26

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: Utilisation GMAP

javais oublié ce problème !
:-/

j'ai ouvert un bug [Bugtracker] ticket 2710


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#8 2012-07-28 20:53:09

Gembrot
Invité

Re: Utilisation GMAP

En fait c'est pas un probleme de version puisque ca me le fait aussi avec mysql version 5.5.25

Warning: [mysql error 1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'maxValue, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (' at line 1
SELECT paut.tagId, MAX(CAST(pait.value AS DECIMAL(20,17))) AS maxValue, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (((piwigo_user_cache_categories pucc
              LEFT JOIN piwigo_categories pct ON pucc.cat_id = pct.id)
              LEFT JOIN piwigo_image_category pic ON pic.category_id = pucc.cat_id)
              LEFT JOIN piwigo_amd_images_tags pait ON pait.imageId = pic.image_id)
              LEFT JOIN piwigo_amd_used_tags paut ON pait.numId = paut.numId
            WHERE pucc.user_id = '1'
             AND (paut.tagId = 'magic.GPS.LatitudeNum' OR paut.tagId = 'magic.GPS.LongitudeNum')
             AND pic.image_id IS NOT NULL
             AND FIND_IN_SET(1, pct.uppercats)!=0
             GROUP BY paut.tagId in /var/www/shanks/incrt.com/include/dblayer/functions_mysql.inc.php on line 770

grum a écrit:

javais oublié ce problème !
:-/

j'ai ouvert un bug [Bugtracker] ticket 2710

merci

#9 2012-07-28 21:03:30

Gembrot
Invité

Re: Utilisation GMAP

Pour résoudre le problème, et ainsi obtenir l'affichage des cartes GMaps, c'est super simple :

il suffit simplement de remplacer les occurrences de maxValue (il y en a 3) par un autre mot qui ne soit pas un mot-clé mysql (par exemple mV) dans {PIWIGO_ROOT}/plugins/GMaps/gmaps_pip.class.inc.php

Le problème étant que l'auteur du module a utilisé un identifiant qui s’avère être un mot-clé mysql dans les version récentes.

Ça donne :

Code:

      // check if there is picture with gps tag in the selected category
      $sql="SELECT paut.tagId, MAX(CAST(pait.value AS DECIMAL(20,17))) AS mV, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (((".USER_CACHE_CATEGORIES_TABLE." pucc
              LEFT JOIN ".CATEGORIES_TABLE." pct ON pucc.cat_id = pct.id)
              LEFT JOIN ".IMAGE_CATEGORY_TABLE." pic ON pic.category_id = pucc.cat_id)
              LEFT JOIN ".$prefixeTable."amd_images_tags pait ON pait.imageId = pic.image_id)
              LEFT JOIN ".$prefixeTable."amd_used_tags paut ON pait.numId = paut.numId
            WHERE pucc.user_id = '".$user['id']."'
             AND (paut.tagId = 'magic.GPS.LatitudeNum' OR paut.tagId = 'magic.GPS.LongitudeNum')
             AND pic.image_id IS NOT NULL
             AND FIND_IN_SET(".$catId.", pct.uppercats)!=0
             GROUP BY paut.tagId";
    }
    elseif($catId==self::CAT_ID_TAGS and isset($page['items']))
    {
      if(count($page['items'])==0) return(false);
      // 'tags'
      $sql="SELECT paut.tagId, MAX(CAST(pait.value AS DECIMAL(20,17))) AS mV, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM ".$prefixeTable."amd_images_tags pait
                  LEFT JOIN ".$prefixeTable."amd_used_tags paut ON pait.numId = paut.numId
            WHERE (paut.tagId = 'magic.GPS.LatitudeNum' OR paut.tagId = 'magic.GPS.LongitudeNum')
             AND pait.imageId IN (".implode(',', $page['items']).")
             GROUP BY paut.tagId";
      $this->category['id']=0;
      $this->buildMapList(0, 'C', self::ID_MODE_CATEGORY);
    }
    elseif($catId==self::CAT_ID_HOME)
    {
      // 'home'
      $this->category['id']=0;
      $this->buildMapList(0, 'C', self::ID_MODE_CATEGORY);
      // check if there is picture with gps tag in the selected category
      $sql="SELECT paut.tagId, MAX(CAST(pait.value AS DECIMAL(20,17))) AS mV, MIN(CAST(pait.value AS DECIMAL(20,17))) AS minValue
            FROM (((".USER_CACHE_CATEGORIES_TABLE." pucc
              LEFT JOIN ".CATEGORIES_TABLE." pct ON pucc.cat_id = pct.id)
              LEFT JOIN ".IMAGE_CATEGORY_TABLE." pic ON pic.category_id = pucc.cat_id)
              LEFT JOIN ".$prefixeTable."amd_images_tags pait ON pait.imageId = pic.image_id)
              LEFT JOIN ".$prefixeTable."amd_used_tags paut ON pait.numId = paut.numId
            WHERE pucc.user_id = '".$user['id']."'
             AND (paut.tagId = 'magic.GPS.LatitudeNum' OR paut.tagId = 'magic.GPS.LongitudeNum')
             AND pic.image_id IS NOT NULL
             GROUP BY paut.tagId";

#10 2012-07-28 21:05:21

Gembrot
Invité

Re: Utilisation GMAP

Il y a plus de 3 occurences de maxValue

Pour éviter d'autre problemes par la suite, il faudrait aussi modifier minValue de la meme maniere.

-gembrot

#11 2012-07-28 23:57:22

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: Utilisation GMAP

en fait si, je pense qu'il s'agit d'un problème de version car chez moi je suis avec mysql 5.0 et je n'ai pas le problème :-)


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#12 2012-07-29 08:37:46

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
16915

Re: Utilisation GMAP

grum a écrit:

en fait si, je pense qu'il s'agit d'un problème de version car chez moi je suis avec mysql 5.0 et je n'ai pas le problème :-)

Bonjour :-)

Ben vous dite la même chose MySql 5.0 ne fait pas partie des versions récentes :-P


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

#13 2012-08-29 03:53:41

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: Utilisation GMAP

j'ai mis à dispo la version 1.4.1, qui normalement résout ce problème...


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

  •  » Plugins
  •  » Utilisation GMAP

Pied de page des forums

Propulsé par FluxBB

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