Categories > TinyButStrong general (FR) >

[fr]TBS & classes => bug or feature ?

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Anselme
Date: 2004-03-13
Time: 22:52

[fr]TBS & classes => bug or feature ?

Bonjour,

Je rencontre de réels problèmes pour utiliser TBS aux sein d'une classe ...
alors voilà :
j'ai un script php qui crée une instance de ma classe "ClassEssai" puis execute la méthode start de cette
classe :


<?php

include_once("./includes/ClassEssai.php");

$instance = new ClassEssai();
$instance->start();
?>

La méthode start() de la classe ClassEssai crée une instance d'un clsTibyButStrong puis appelle la méthode show() ...

Sauf que j'obtiens un mesasge d'erreur comme la variable name que j'ai placé dans mon htmeuleu n'existe pas ... ?

Voici le html :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>essai</title>
  </head> 
  <body>
    [var.name]
  </body>
</html>


et voici le code de la classe ClassEssai :
<?php

include_once('./includes/tbs_class.php');//classe qui gère les templates

class ClassEssai
{
  //propriétés
  var $_mainTemplate ; //template principale

  //constructeur
  function ClassEssai()
  {
    $this->_mainTemplate = "./essai.html";
  }

  function start()
  {
    $name = "Salut Monde !";

    $toto = new clsTinyButStrong ;
    $toto->loadTemplate($this->_mainTemplate);
    $toto->Show();
  }
}
?>

et j'obtiens ceci :
TinyButStrong Error (Merge Php Var): Can't merge [var.name] because there is no corresponding PHP variable. This message can be cancelled using the 'noerr' parameter.
[var.name]


Si quelqu'un a un episte ou explication ...?
merci d'avance
By: Skrol29
Date: 2004-03-14
Time: 00:21

Re: [fr]TBS & classes => bug or feature ?

Salut,

Dans ta méthode start(), la variable $name est locale.
Il n'exise donc pas de variable globale $name.
By: Anselme
Date: 2004-03-14
Time: 08:38

Re: [fr]TBS & classes => bug or feature ?

oui, j'y ai pensé après avoir posté mon exemple, mais si jedéclare $name ds les propriétés, que je remplace $name par $this->name dans la méthode start()  et que je met [var.this->name] dans le html cela ne fonctionne pas mieux ....
By: Condutiarii
Date: 2004-03-14
Time: 19:52

Re: [fr]TBS & classes => bug or feature ?

class ClassEssai
{
  //propriétés
  var $_mainTemplate ; //template principale

  //constructeur
  function ClassEssai()
  {
    $this->_mainTemplate = "./essai.html";
  }

  function start()
  {
    global $name;
    $name = "Salut Monde !";

    $toto = new clsTinyButStrong ;
    $toto->loadTemplate($this->_mainTemplate);
    $toto->Show();
  }
}
By: Anselme
Date: 2004-03-14
Time: 22:39

Re: [fr]TBS & classes => bug or feature ?

Yep !! ça marche !
Merci