•  » Styles
  •  » [Résolu] Envoi nombre total de photos publiques dans un template

#31 2016-06-08 06:52:45

titounet
Membre
Mauvezin, Gers
2010-06-07
50

Re: [Résolu] Envoi nombre total de photos publiques dans un template

Si j'essaye avec ça :

Code:

$template->assign(var_dump($result));

j'ai cet affichage en haut de page :

Code:

object(mysqli_result)#125 (5) { ["current_field"]=> int(0) ["field_count"]=> int(1) ["lengths"]=> NULL ["num_rows"]=> int(1) ["type"]=> int(0) }

Je ne sais pas comment interpréter tout ça.

Donc j'en suis toujours au même point : le nombre d'image ne s'affiche toujours pas dans ma variable sur la page et le message d'erreur me pête la page :

Code:

Catchable fatal error: Object of class mysqli_result could not be converted to string in /home/titou/www/beouetsavic/_data/templates_c/domkd3^08388098deabcad4a52bbe20e5ea86627c25a42d_0.file.a-propos.tpl.php on line 84

Rappel du code du plugin personnel :

Code:

<?php
/*
Plugin Name: Total Images public for TPL
*/

add_event_handler('loc_after_page_header', 'Pure_default_after_page_header');
function Pure_default_after_page_header()
{
  global $template, $page, $user;
  if (isset($page['body_id']) and $page['body_id'] == 'theAboutPage')
  {
    
$query = '
SELECT COUNT(DISTINCT(image_id)) as total
  FROM phpwebgallery_image_category';
{
  $query.= '
   WHERE category_id NOT IN ('.$user['forbidden_categories'].')';
}
$query.= '
;';
    
$result = pwg_query($query);
    
/* $template->assign(var_dump($result)); */
    
$template->assign('TOTAL_IMAGES',$result);
  }
}

?>

Dernière modification par titounet (2016-06-08 15:07:36)


Version de Piwigo: 2.9.5
PHP: 7.3
Thème Piwigo : Bootstrap Darkroom
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#32 2016-06-08 20:10:35

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

Re: [Résolu] Envoi nombre total de photos publiques dans un template

Bonsoir

var_dump c'est pour voir le contenu de $result qui doit être un tableau
c'est comme echo pour un bout de texte


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

#33 2016-06-08 20:15:09

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

Re: [Résolu] Envoi nombre total de photos publiques dans un template

titounet a écrit:

:

Code:

<?php
.......    
$query = '
SELECT COUNT(DISTINCT(image_id)) as total
  FROM phpwebgallery_image_category';
{
  $query.= '
   WHERE category_id NOT IN ('.$user['forbidden_categories'].')';
}
$query.= '
;';
    
$result = pwg_query($query);
    
$template->assign('TOTAL_IMAGES',$result);
  }
}
                
?>

je dirais un truc du genre

$result = pwg_query($query);
$row = pwg_db_fetch_assoc($result);
$total = $row['total'];

$template->assign('TOTAL_IMAGES',$total );


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

#34 2016-06-08 20:39:43

titounet
Membre
Mauvezin, Gers
2010-06-07
50

Re: [Résolu] Envoi nombre total de photos publiques dans un template

ddtddt a écrit:

je dirais un truc du genre

Code:

$result = pwg_query($query);
$row = pwg_db_fetch_assoc($result);
$total = $row['total'];

$template->assign('TOTAL_IMAGES',$total );

Bonsoir ddtddt,

YYYEESSSSSS BRAVO ddtddt !!!! ça marche à 95% !! Merci !!

Maintenant ça m'affiche le nombre total d'image de la galerie, mais, en revanche, ça me retranche pas le nombre de photos non publiques (les images non accessibles à/aux l'utilisateur(s) guest).

j'ai d'ailleurs un message d'erreur :

Code:

Notice: Undefined index: restrictions in /home/titou/www/beouetsavic/plugins/PersonalPlugin/main.inc.php on line 16

quand je réactive la ligne 16 :

Code:

if (count($user['restrictions']) > 0)

Et le nombre d'image ne bouge pas (ça reste  le nombre total d'image de la galerie sans restriction)


Version de Piwigo: 2.9.5
PHP: 7.3
Thème Piwigo : Bootstrap Darkroom
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#35 2016-06-08 22:15:28

titounet
Membre
Mauvezin, Gers
2010-06-07
50

Re: [Résolu] Envoi nombre total de photos publiques dans un template

[SOLUTION]

Alors voilà c'est résolu.

Je voudrais adresser mes remerciements sincères à @ddtddt  et @flop25 pour leur aide, le temps accordé, leur grande patience, et leur travail puisqu'il m'ont fait 70% du boulot sur ce coup là !

Bonne soirée à vous deux


Pour finir, j'ai donc trouvé la dernière partie de la solution, en changeant la requête pour qu'elle corresponde à ce que je voulais : afficher le nombre total d'images uniques qui sont accessibles à tout le monde dans la galerie (les photos publiques, donc).

Je suis donc plutôt allé taper dans la table (PREFIXE)_images en ne sélectionnant que les images de "level 0", donc du coup la requête est beaucoup plus simple.

Voici le code du plugin personnel :

Code:

<?php
/*
Plugin Name: Total Public Images for TPL
*/

add_event_handler('loc_after_page_header', 'Pure_default_after_page_header');
function Pure_default_after_page_header()
{
  global $template, $page, $user;
  if (isset($page['body_id']) and $page['body_id'] == 'theAboutPage')
  {
    
$query = '
SELECT COUNT(DISTINCT(id)) as total
  FROM phpwebgallery_images';

$query.= '
WHERE level=0';
   
$query.= '
;';
    
$result = pwg_query($query);
$row = pwg_db_fetch_assoc($result);
$total = $row['total'];
    
$template->assign('TOTAL_IMAGES',$total);
  }
}

?>

La variable dans le code du template-extension là où je veux que la donnée apparaisse dans le texte est :

Code:

{$TOTAL_IMAGES}

Le résultat dans la page sur le site en question : http://www.beouetsavic.fr/about (dans la section "Histoire du site")

Dernière modification par titounet (2016-06-09 09:37:55)


Version de Piwigo: 2.9.5
PHP: 7.3
Thème Piwigo : Bootstrap Darkroom
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#36 2016-06-08 22:19:15

flop25
Équipe Piwigo
2006-07-06
6465

Re: [Résolu] Envoi nombre total de photos publiques dans un template

de rien. Vous avez parfaitement conclu :)
vous avez du apprendre depuis zéro un langage de programmation, ce qui est très difficile mais est enrichissant (se former un esprit logique) et permet de se libérer de pas mal de contraintes
peut être à bientôt bonne soirée

Hors ligne

#37 2016-06-08 22:34:10

titounet
Membre
Mauvezin, Gers
2010-06-07
50

Re: [Résolu] Envoi nombre total de photos publiques dans un template

flop25 a écrit:

de rien. Vous avez parfaitement conclu :)
vous avez du apprendre depuis zéro un langage de programmation, ce qui est très difficile mais est enrichissant (se former un esprit logique) et permet de se libérer de pas mal de contraintes
peut être à bientôt bonne soirée

Merci pour ce retour @flop25 et à bientôt j'espère aussi.

Au passage je rajouterai que Piwigo est une application géniale, et de gros efforts et beaucoup de travail ont été réalisés par les développeurs de la communauté pour simplifier et améliorer son utilisabilité (je suis ergonome de métier, donc, par déformation professionnelle, forcément sensible à cela).

Mais c'est vrai que quelquefois, pour une évolution/demande/modification qui pourrait paraitre "simple" au premier abord (dans le cas présent), il faut parfois encore mettre les mains dans le cambouis et je trouve que c'est difficile avec Smarty pour un novice comme moi.

Pour revenir un peu plus prés du cas qui m'occupait, ça vaut ce que ça vaut mais : je ne sais pas  du tout s'il y a d'autres demandes proches de la mienne, mais peut être que des variables existantes (dont certains correspondantes aux stats dans l'admin par exemple) pourraient être mises à disposition dans les différentes zones de champs de texte utilisateur ?

Car finalement des requêtes de données/info comme celle que je souhaitais récupérer dans le cas présent existent déjà ailleurs dans le standard de l'application.

Dernière modification par titounet (2016-06-09 09:28:27)


Version de Piwigo: 2.9.5
PHP: 7.3
Thème Piwigo : Bootstrap Darkroom
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

  •  » Styles
  •  » [Résolu] Envoi nombre total de photos publiques dans un template

Pied de page des forums

Propulsé par FluxBB

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