Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

marcophilie56
2009-02-25 18:27:37

Bonjour
Merci beaucoup cela marche très bien
Je note le sujet comme résolu
Cordialement

P@t
2009-02-25 13:41:11

Ton fichier tpl doit changer:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<table border="1" width="98%">
   <tr>
<td > <div align="center"><font face="Comic Sans MS" size="2">Civilité</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Nom</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Prénom</font></div></td>
    <td ><div align="center"><font size="2" face="Comic Sans MS">Début de mandat</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Fin de mandat</font></div></td>
    </tr>
  {foreach from=$users item=user}
<tr>
<td ><div align="center"><font face="Comic Sans MS" size="2">{$user.CIVILITE}</font></div></td>
<td ><div align="center"><font face="Comic Sans MS" size="2">{$user.NOM}</font></div></td>
<td ><div align="center"><font face="Comic Sans MS" size="2"> {$user.PRENOM}</font></div></td>
<td ><div align="center"><font size="2" face="Comic Sans MS"> {$user.DEBUT}</font></div></td>
<td > <div align="center"><font face="Comic Sans MS" size="2"> {$user.FIN}</font></div></td>
</tr>
  {/foreach}
  </table>
</body>

Et dans ton fichier php, c'est append qu'il faut utiliser:

$template->append('users', array(
  'CIVILITE'  => $row['Civilite'],
  'NOM'  => $row['nom'],
  'PRENOM' => $row['prenom'],
  'DEBUT'  => $row['debut_mandat'],
  'FIN'  => $row['fin_mandat']
));

marcophilie56
2009-02-25 13:11:52

Bonjour
Je viens de tester aujourd'hui ta solution
J'ai seulement le dernier enregistrement affiché
La boucle ne doit pas fonctionner, j'ai teste avec $users sans résultat
Cordialement

Didou
2009-02-23 17:32:39

Code:

Fatal error: Smarty error: [in C:\Documents and Settings\DOMI\Mes documents\web\galerie\plugins\PersonalPlugin/maire.tpl line 16]: syntax error: unrecognized tag: user.CIVILITE (Smarty_Compiler.class.php, line 455) in C:\Documents and Settings\DOMI\Mes documents\web\galerie\include\smarty\libs\Smarty.class.php on line 1092

Cela parle d'une erreur dans le fichier maire.tpl, tu as bien remplacer {user.CIVILITE} par {$user.CIVILITE} ?

marcophilie56
2009-02-22 09:55:47

Bonjour
Merci de ta réponse voici le message d'erreur :

Fatal error: Smarty error: [in C:\Documents and Settings\DOMI\Mes documents\web\galerie\plugins\PersonalPlugin/maire.tpl line 16]: syntax error: unrecognized tag: user.CIVILITE (Smarty_Compiler.class.php, line 455) in C:\Documents and Settings\DOMI\Mes documents\web\galerie\include\smarty\libs\Smarty.class.php on line 1092

Voici le code du fichier maire.tpl avec des corrections
<?php

$result = mysql_query("SELECT num_commune, Civilite, nom, prenom, debut_mandat, fin_mandat FROM maires WHERE num_commune like '" . $params['commune'] . "' order by right(debut_mandat,4)");

  // modèle à utiliser auquel on adjoint un nom arbitraire
$template->set_filenames(array(
    'body' => dirname(__FILE__) . '/maire.tpl'
  ));

  // Assignation des variables
  $template->assign( array(
    'NB_USERS' => mysql_num_rows($result)
  ));
  //
  // Assignation des variables dans le block 'user'
  //
  while( $row = mysql_fetch_array($result) )
  {
      $template->assign('user', array(
           'CIVILITE'  => $row['Civilite'],
           'NOM'  => $row['nom'],
           'PRENOM' => $row['prenom'],
           'DEBUT'  => $row['debut_mandat'],
           'FIN'  => $row['fin_mandat']
          ));
  }


  // Affichage des données
$desc = $template->parse('body', true);
?>

A mon avis, l'erreur vient de la ligne  $template->assign('user', array(
Merci d'avance
Cordialement

Didou
2009-02-21 21:23:04

Je pense que cela vient du fait que assign_vars n'est plus valide en smarty mettre assign tout court à la place.

Et quand tu as des erreurs tu veux bien faire un copier coller de l'erreur comme ça je vois plus vite et mieux d'où ça vient ;)

A bientôt

marcophilie56
2009-02-20 14:15:01

Bonjour
Merci de cette première information, mais j'ai d'abord une erreur dans le fichier php à la ligne 11 qui me semble être celle-ci :
    'NB_USERS' => mysql_num_rows($result)

Cordialement

Didou
2009-02-19 10:13:30

Première piste :

1. Remplacer {user.CIVILITE} par {$user.CIVILITE} il me semble.

En tous les cas pour mon plugin perso j'ai du rajouter des $ devant toutes les variables dans les templates...


2. Après je sais pas si assign_block_vars et toujours valable... peut être le remplacer pas assign tout court.


Voili voila pour ce que je sais.

marcophilie56
2009-02-17 13:18:02

Bonjour
Avec votre assistance, j'ai mis en place un plugin personnel me permettant de renseigner le camp comment afin de fournir plusieurs informations pour une catégorie

1 - le champ comment est renseigné par les infos suivantes :
<!-- commune: ALLAIRE -->
<!-- categorie: Poste -->

2 - le fichier main.inc.php est bati
Plugin Name: PersonalPlugin
Version: 1.7
Description: Création de pages pour afficher la description d'une catégorie.
*/
function get_special_description($desc)
{
   global $page, $template;
   if (isset($page['category']['comment']) and $page['category']['comment'] == $desc)
   {
      preg_match_all("#\<\!-- (.*?)\: (.*?) --\>#is", $desc, $matches);
      foreach ($matches[1] as $key => $param)
      {
         $params[$param] = $matches[2][$key];
      }
      if (isset($params))
      {
          if ($params['categorie'] == 'maire') include(dirname(__FILE__) . '/maire.php');
      }
   }
   return $desc;
}

add_event_handler('render_category_description', 'get_special_description');
?>

3 - le fichier maire.php est écrit comme cela :
<?php

$result = mysql_query("SELECT num_commune, Civilite, nom, prenom, debut_mandat, fin_mandat FROM maires WHERE num_commune like '" . $params['commune'] . "' order by right(debut_mandat,4)");

  // modèle à utiliser auquel on adjoint un nom arbitraire
$template->set_filenames(array(
    'body' => dirname(__FILE__) . '/maire.tpl'
  ));

  // Assignation des variables
  $template->assign_vars( array(
    'NB_USERS' => mysql_num_rows($result)
  ));
  //
  // Assignation des variables dans le block 'user'
  //
  while( $row = mysql_fetch_array($result) )
  {
      $template->assign_block_vars('user', array(
           'CIVILITE'  => $row['Civilite'],
           'NOM'  => $row['nom'],
           'PRENOM' => $row['prenom'],
           'DEBUT'  => $row['debut_mandat'],
           'FIN'  => $row['fin_mandat']
          ));
  }


  // Affichage des données
$desc = $template->parse('body', true);
?>

4 - le fichier maire.tpl est écrit comme suit :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<table border="1" width="98%">
   <tr>
<td > <div align="center"><font face="Comic Sans MS" size="2">Civilité</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Nom</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Prénom</font></div></td>
    <td ><div align="center"><font size="2" face="Comic Sans MS">Début de mandat</font></div></td>
    <td > <div align="center"><font face="Comic Sans MS" size="2">Fin de mandat</font></div></td>
    </tr>
  <!-- BEGIN user -->
<tr>
<td ><div align="center"><font face="Comic Sans MS" size="2">{user.CIVILITE}</font></div></td>
<td ><div align="center"><font face="Comic Sans MS" size="2">{user.NOM}</font></div></td>
<td ><div align="center"><font face="Comic Sans MS" size="2"> {user.PRENOM}</font></div></td>
<td ><div align="center"><font size="2" face="Comic Sans MS"> {user.DEBUT}</font></div></td>
<td > <div align="center"><font face="Comic Sans MS" size="2"> {user.FIN}</font></div></td>
</tr>
  <!-- END user -->
  </table>
</body>

Cette écriture n'est pas compatible avec Smarty.
Merci de votre aide pour adapter ce plugin.
Cordialement

Pied de page des forums

Propulsé par FluxBB

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