Annonce

#1 2005-07-10 00:51:13

menfin
Membre
2005-07-09
27

Erreur mysql

Préambule : Je découvre avec bonheur ce super programme qui répondra peut-être à notre quête.

Explication : j'ai développé une base iconographique sous Access (1300 images à ce jour). Je souhaite l'ouvrir sur le net, mais avec Bill, ce n'est jamais simple. Donc je découvre, il ya 15 jours, ce programme génial et je transfére les données de la base Access vers la base mysql (après quelques transformations pour s'adapter à la nouvelle philosophie de PhpWebGallery). Et miracle de la technique, tout semble se passer sans problèmes. Les catégories, les vignettes, les images ... tout est là et est accessible. Mais lorsque je veux modifier les infos attachées à une image j'obtiens le message d'erreur suivant :

SELECT id,name,uppercats,global_rank
  FROM phpwebgallery_categories
    INNER JOIN phpwebgallery_image_category ON id = category_id
  WHERE image_id = 880
    AND id !=
;
[mysql error 1064] You have an error in your SQL syntax near '' at line 7

Je ne comprends pas car les deux tables incriminées (phpwebgallerry_categories et phpwebgallery_image_category) sont parfaitement renseignées.

Quelqu'un peut-il m 'aider ? Merci par avance

Hors ligne

#2 2005-07-10 11:27:25

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12644

Re: Erreur mysql

en face de "id != ", on devrait trouver l'identifiant de la catégorie de stockage de l'image 880. C'est bizarre, car il n'y aucune raison que cette colonne soit nulle.

Examine le code de admin/picture_modify.php et le résultat de la requête :

Code:

SELECT storage_category_id
  FROM phpwebgallery_images
  WHERE id = 880
;

Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#3 2005-07-10 14:57:29

menfin
Membre
2005-07-09
27

Re: Erreur mysql

Pigé : le champ "storage_category_id" est = à 0. Je ne l'ai pas renseigné dans ma récup. de la base Access.
Fait-il référence au champ "category_id" de la table phpwebgallerry_image_category ?
Si c'est le cas, que faire si pour un même enregistrement de la table phpwebgallerry_images, on a plusieurs enregistrements dans la table phpwebgallerry_image_category ? Puis-je prendre le premier qui se présente afin d'allimenter le champ "storage_category_id" ?

Hors ligne

#4 2005-07-10 15:34:55

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12644

Re: Erreur mysql

Le champ images.storage_category_id correspond à categories.id. Tout comme le champ image_category.category_id d'ailleurs. Ce champ indique à PhpWebGallery quelle est la catégorie physique de stockage de l'élément.

Ce champ est important car contrairement au champ images.path, il ne peut pas être recalculé. En effet, images.path est un champ calculé à partir de :

- sites.galleries_url
- une somme de categories.dir
- images.file

La table image_category permet de créer des liens virtuels (au contraire des liens physiques).

Je pense qu'en branche 1.5, l'information que telle catégorie est la catégorie de stockage d'un élément va être déplacée de images.storage_category_id vers image_category.is_storage. On verra ainsi plus facilement quels sont les liens virtuels et le liens physiques.

Je pense que probablement dans ta migration Access vers PhpWebGallery, tu n'as pas créer de catégories physiques. Si c'est le cas, il va falloir en créer pou être conforme au mode de fonctionnement du reste de l'application.


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#5 2005-07-11 23:09:23

menfin
Membre
2005-07-09
27

Re: Erreur mysql

J'ai créé une catégorie virtuelle (comme toute les autres) que j'ai nommé "Catégorie virtuelle" et j'ai fait un UPDATE de la table afin d'attribuer l'id de cette catégorie à tous mes enregistrements images : problème résolu.
Merci de ton aide.

Mais j'ai encore quelques problèmes. Je vais débroussailler avant de faire appel de nouveau à vos talents. Dès que notre projet est suffisament avancé, je vous communique l'adresse du site qui vous permettra de voir le résultat.

Encore bravo pour ce programme

Hors ligne

#6 2005-07-11 23:19:30

menfin
Membre
2005-07-09
27

Re: Erreur mysql

J'ai créé une catégorie virtuelle (comme toute les autres) que j'ai nommé "Catégorie virtuelle" et j'ai fait un UPDATE de la table afin d'attribuer l'id de cette catégorie à tous mes enregistrements images : problème résolu.
Merci de ton aide.

Mais j'ai encore quelques problèmes. Je vais débroussailler avant de faire appel de nouveau à vos talents. Dès que notre projet est suffisament avancé, je vous communique l'adresse du site qui vous permettra de voir le résultat.

Encore bravo pour ce programme

Hors ligne

Pied de page des forums

Propulsé par FluxBB

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