Categories > TinyButStrong general (FR) >

Comment afficher les erreurs

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Dales
Date: 2006-09-29
Time: 15:35

Comment afficher les erreurs

Quand il y a des erreurs de syntaxes PHP, aucune erreur n'est affichée quand le modèle est fusionné.
Comment peut-on les afficher pour déboguer ?
By: Skrol29
Date: 2006-09-29
Time: 19:06

Re: Comment afficher les erreurs

Bonjour,

Quand il y a des erreurs PHP, elles s'affichent dans la page principale, avant le flux final envoyé par TBS. On retrouve donc les erreurs en général en haut de page. Sauf si tu détournes le flux affiché ou si tu fais une redirection HTML quelconque dans ta page affichée.
By: Dales
Date: 2006-09-30
Time: 08:22

Re: Comment afficher les erreurs

Bonjour,
Je ne comprends pas,
J'utilise des sous modèles, est-ce pour celà ?
Voici le code du sous modèle, quand je l'execute, il n'y a rien qui apparaisse (taille de la page =0Ko)

...
// charge le template
$TBS->LoadTemplate('templates/tpl_sfmvis.html') ;

// fusion des blocks
$TBS->MergeBlock( "blk_famlst", "mysql", "SELECT * FROM famille ORDER BY lib_fam ASC" ) ;

if ($sel_fam){
    $qry = "SELECT s.cod_sou_fam, s.cod_fam, s.lib_sou_fam, s.description, f.lib_fam, s.statvis, s.actif FROM sousfamille s LEFT OUTER";
    $qry .= " JOIN famille f ON f.cod_fam=s.cod_fam WHERE s.cod_fam='".$sel_ fam."' ORDER BY s.cod_fam, s.cod_sou_fam" ;
}else{
    $qry = "SELECT s.cod_sou_fam, s.cod_fam, s.lib_sou_fam, s.description, f.lib_fam, s.statvis, s.actif FROM sousfamille s LEFT OUTER";
    $qry .= " JOIN famille f ON f.cod_fam=s.cod_fam ORDER BY s.cod_fam, s.cod_sou_fam" ;
}

$TBS->PlugIn( TBS_BYPAGE, $page_size, $pg, $cnt );
$cnt = $TBS->MergeBlock( "blk_sfmvis", "mysql", $qry ) ;
$TBS->PlugIn(TBS_NAVBAR,'navsfm', '', $pg, $cnt, $page_size);

// affichage
$TBS->Show() ;
By: Skrol29
Date: 2006-09-30
Time: 21:43

Re: Comment afficher les erreurs

Si tu utilise la paramètre "script" en mode sous-modèle (c'est à dire conjointement avec "subtpl"), alors le flux est effectivement détourné pour être insérer à la bonne place dans le modèle principal.

Si rien ne s'affiche c'est probablement que la variable $TBS de ton sous-script est une nouvelle sintance de TBS au lieu d'être liée à 'instance parent ($this). Si c'est le cas, l'instruction $TBS->Show() du sous-modèle provoque la fin immédiate du script.

En mode sous-modèle, tu dois utiliser l'instance TBS parent. Voici ce qui est donné dans les exemples en logne :
if (isset($this)) {
  // We are under the TBS Subtemplate Mode =>
    //   variables are always local, not global,
    //   and the TBS object is referenced by variable $this.
    $TBS =& $this;
} else {
  // This sub-script can also be run under the normal mode =>
  //  its corresponding template will be displayed like a main template.
    include_once('tbs_class.php') ;
    $TBS = new clsTinyButStrong;
}
By: Dales
Date: 2006-10-01
Time: 11:18

Re: Comment afficher les erreurs

Mon problème est resolu !
Merci
By: Lolo
Date: 2006-10-13
Time: 05:05

Re: Comment afficher les erreurs

Bonjour,

Moi j'ai le même problème. Quand j'ai une erreur PHP (quelqu'elle soit) dans une sous template j'obtiens une page blanche avec aucun message d'erreur. C'est vraiment pas pratique pour débugger.

Par contre je n'utilise pas TBS dans mes sous templates. Ce sont des scripts qui n'ont rien a voir avec TBS. Par contre si j'interroge le script en question directement, je vois mon erreur PHP. j'utilise ça:

[onshow;script=monscript.php;subtpl]


Merci
By: Dales
Date: 2006-10-13
Time: 07:26

Re: Comment afficher les erreurs

Salut,
lis le dernier post de Skrol29.
En fait tout l'affichage doit passer par l'instance héritée du modèle parent, sinon rien ne s'affichera.
By: aezea
Date: 2007-04-11
Time: 19:57

Re: Comment afficher les erreurs

verifier error.log par FTP dans chaque directory
By: lolo
Date: 2007-04-12
Time: 05:13

Re: Comment afficher les erreurs

> verifier error.log par FTP dans chaque directory

encore faut il que les logs soient activés...