Pages: 1 2
Alors le probleme conernant les images associées à chaque catégorie est le suivant:
depuis que j'ai upgrader à la version 1.4, les images représentant chaque galerie ne tournent plus aléatoirement mais une image et une seule reste attachée à la représentation de chaque galeire, sachant que je n'ai pas utilisé la fonction d'assigner une image pour chacune des catégories.
Cependant si j'essaye d'assigner une image à une catégorie, j'ai ce message d'erreur lorsque je valide:
INSERT INTO phpwebgallery_image_category (image_id,category_id) VALUES (7986,69);
[mysql error 1062] Duplicate entry '7986-69' for key 1
Alors si quelqu'un peut me dire comment faire pour rétablir l'affichage aléatoire des images dans chaque catégories ce serait géniel et au pire me dire comment enlever cette erreur et donc à ce moment là que je puisse assigner une photo donnée à mes catégories.
P.S : par contre dans la section calendrier, les images s'affichent bien aléatoirement.
Merci beaucoup par avance de votre aide .
Stéphane
Hors ligne
pas de réponses a me donner?!?
Hors ligne
Personne ne peut ou ne sait répondre?
Hors ligne
Salut,
Pour ma part je sais pas trop pourquoi tu veux insérer ces valeurs dans cette table d'autant plus que d'après le message elles y sont déjà.
D'après ce que je comprends la table phpwebgallery_image_category rattache une image a une catégorie, je pense donc que ton problème doit être ailleurs.
Seldon
Hors ligne
j'ai le même problème: les images attachées aux catégories sont fixes et non aléatoires...
Comment les rendre à nouveau aléatoires??
merci d'avance!
En 1.4, l'image représentante par défaut est une fonctionnalité qui a disparu. Lire les explications complètes sur Random picture for category (en).
Je pense que si on lui demande gentiment, pse pourrait nous faire un MOD compatible 1.4.x pour retrouver le comportement de la 1.3.x sur l'aléatoirité des images représentantes.
Hors ligne
Bonjour à tous,
Encore mieux : suis sûr que parmi les demandeurs (et apparemment ils sont nombreux), y'en a qui rêveraient de maintenir un MOD et de mettre le pied dans le dev de PWG ;-)
Alors je vous file les billes dés que je les retrouve et me mets à votre disposition en cas de problème.
pse
Hors ligne
J'ai extrait de mon MOD les modifs concernant "le représentant aléatoire". Pas sûr que tout y soit, mais je pourrais compléter si besoin (et vous avez toujours accès au source de mon MOD).
- Dans admin/include/functions.php, modifier la fonction set_random_representant :
function set_random_representant($categories) { $datas = array(); foreach ($categories as $category_id) { $data = array('id' => $category_id, 'representative_picture_id' => NULL); array_push($datas, $data); } $fields = array('primary' => array('id'), 'update' => array('representative_picture_id')); mass_updates(CATEGORIES_TABLE, $fields, $datas); }
- Dans admin/cat_modify.php, modifier la ligne 171 :
if (($category['nb_images'] > 0) && (isset($category['representative_picture_id'])))
- Dans admin/picture_modify.php, modifier la dernière affectation :
$query = ' SELECT id,name,uppercats,global_rank FROM '.CATEGORIES_TABLE.' WHERE id IN ('.implode(',', $associateds).') AND (representative_picture_id IS NULL OR representative_picture_id != '.$_GET['image_id'].') ;';
- Dans include/category_subcats.php, modifier la ligne 35 :
SELECT id, name, date_last, representative_picture_id
- Dans include/category_subcats.php, remplacer les lignes 68-83 par :
while ($row = mysql_fetch_array($result)) { // First search representative picture if defined for current category if (isset($row['representative_picture_id'])) { $query = ' SELECT path, tn_ext FROM '.IMAGES_TABLE.' WHERE id ='.$row['representative_picture_id'].' ORDER BY RAND() LIMIT 0,1'; $element_result = pwg_query($query); } // Then if representaive picture is not specified or not found // search a random picture among children categories (recursively) if ((!isset($row['representative_picture_id'])) || (mysql_num_rows($element_result) == 0)) { $query = ' SELECT path, tn_ext FROM '.IMAGES_TABLE.' AS I INNER JOIN '.IMAGE_CATEGORY_TABLE.' AS IC ON I.id = IC.image_id INNER JOIN '.CATEGORIES_TABLE.' AS C ON IC.category_id = C.id WHERE uppercats REGEXP \'(^|,)'.$row['id'].'(,|$)\''; // we must not show pictures of a forbidden category if ($user['forbidden_categories'] != '') { $query.= ' AND C.id NOT IN ('.$user['forbidden_categories'].')'; } $query.= ' ORDER BY RAND() LIMIT 0,1;'; $element_result = pwg_query($query); }
Voilà, je vous rappelle que pour créer son MOD, c'est l? que ça se passe ;-)
pse
Hors ligne
Bonjour pse,
J'ai pas l'impression que ça fonctionne. J'ai tjs les mêmes photos à chaque connexion.
D'ailleurs, je suis allé sur ton site de démo, et je crois bien que ça ne fonctionne pas non plus : la photo qui représente la sous-cat "Architectures" est tjs la même...
yan a écrit:
D'ailleurs, je suis allé sur ton site de démo, et je crois bien que ça ne fonctionne pas non plus : la photo qui représente la sous-cat "Architectures" est tjs la même...
Si si ça marche. Mais certaines catégories, comme "Architecture" sont représentées par une image fixe (je viens de mettre "Architecture" en aléatoire).
T'as bien édité la catégorie et sélectionné le choix aléatoire ?
pse
Hors ligne
erf désolé, effectivement je suis pas allé jusqu'au bout
je savais pas qu'il fallait cliquer sur "Trouver un nouvel représentant au hasard"
ça marche impec, merci bcp !
je voulais dire "nouveau représentant" évidemment :)
euh perso j'suis trop mauvais en php, j'ai juste appliqué les modif proposées
Bonjour,
Depuis mon upgrade de la version 1.3.4 à la version 1.4.1, la fonction qui permettait d'afficher une image aléatoire (et qui fonctionnait correctement en 1.3.4) sur ma page index ne fonctionne plus... S'agit il d'un bug ou d'un pb de paramétrage ?
Merci de votre aide.
Laurent.
Pages: 1 2