smarty.class.php non trouvé
le 05/02/2005 à 19:05
Isaac
Voilà, j'ai réussi à 'installer'
Smarty.
Voici le script avec lequel j'ai un problème :
<?php
define(SMARTY_DIR, 'http://127.0.0.1/cours/');
require 'http://127.0.0.1/smarty/libs/smarty.class.php';
$include_path = ini_set('include_path', '.;M:\_web.zmwsc\smarty');
If ($include_path) echo '<p>Ok !</p>';
Class Index extends Smarty { // ligne 8
Function __construct () {
$this -> template_dir = SMARTY_DIR.'template/';
$this -> compile_dir = SMARTY_DIR.'template_c/';
$this -> config_dir = SMARTY_DIR.'configs/';
$this -> cache_dir = SMARTY_DIR.'cache/';
$this -> caching = True;
$this -> assign('app_name', 'Index');
}
}
$index = new Index();
$index -> assign('name', 'Isaac');
$index -> display('index.tpl');
?>
Voici ce que j'obtiens quand je le visualise :
Ok !
Fatal error: Class 'Smarty' not found in M:\_web.zmwsc\cours\index.php on line 8
J'en conclut, par le 'Ok !' que c'est la classe qui pose problème. Mais quoi ?
Merci d'avance, ++
http://www.zmws.com
Class 'Smarty' not found
il ne trouve pas la classe Smarty :)
Elle ne doit pas etre include avant ta déclaration de la classe Index.
le 06/02/2005 à 16:03
Isaac
Je suis peut-être nul en anglais, mais j'avais compris... ! L'unique classe contenue dans le smarty.class.php est la classe Smarty. Va voir par toi même...
Je vais encore chercher.
++
http://www.zmws.com
le 06/02/2005 à 18:27
bibi
LA GLOBULE te dit que tu dois faire require('smarty.class.php');
au début de ton script pour enlever ton probleme :)
commit suicide
le 06/02/2005 à 18:49
Isaac
Bissoir !
Le problème ne "s'enlève" pas comme ça apparemment ... J'ai mis le chemin
M:\_web.zmwsc\smarty pour rajouter Smarty dans
include_path, mais est-ce ça suffit de mettre le chemmin ? ça m'a l'air un peu zarbi...
Smarty.class.php se trouve dans
M:\_web.zmwsc\smarty\libs\. Or, un exemple est donné ; il se trouve dans
M:\_web.zmwsc\smarty\demo\. En voici une partie :
<?php
require '../libs/Smarty.class.php';
$smarty = new Smarty;
//blabla que je vous épargne ...
?>
On voit bien que le chemin n'est pas
Smarty.class.php et qu'il existe une classe Smarty.
J'en déduis que c'est
include_path qui ne va pas ...
Bon, ++
http://www.zmws.com
le 07/02/2005 à 14:27
Isaac
Salut !
Mes problèmes avec Smarty se réduisent. Je n'ai plus qu'
un seul messafe d'erreur !
Le voilà :
Parse error: syntax error, unexpected T_STRING in M:\_web.zmwsc\cours\smarty.php on line 3
Mais je comprends pas l'ereur ...
Merci, ++
http://www.zmws.com
le 07/02/2005 à 14:41
Isaac
Apparemment, il y a un petit problème d'affichage (en tout cas chez moi ...)
le caractère qui pose problème est le backslash \
http://www.zmws.com
le 07/02/2005 à 17:47
bibi
echape le en mettant un \ devant peut-etre
commit suicide
le 07/02/2005 à 18:32
Isaac
Wiwi, c'est réglé, de ce oté là.
L'erreur que j'ai, maintenant, pour changer, c'est :
Warning: Smarty::fetch(M:\_web.zmwsc\cours\..\..\smarty\internals\core.read_cache_file.php) [function.fetch]: failed to open stream: No such file or directory in M:\smarty\libs\smarty.class.php on line 1167
Fatal error: Smarty::fetch() [function.require]: Failed opening required 'M:\_web.zmwsc\cours\..\..\smarty\internals\core.read_cache_file.php' (include_path='.;M:\PEAR\;M:\smarty\') in M:\smarty\libs\smarty.class.php on line 1167
Et mon fichier 'réparé' :
<?php
define(SMARTY_DIR, dirname(__FILE__).'\\..\\..\\smarty\\');
require SMARTY_DIR.'libs\\smarty.class.php';
Class Index extends Smarty {
Function __construct () {
$this -> template_dir = 'template\\';
$this -> compile_dir = 'template_c\\';
$this -> config_dir = 'configs\\';
$this -> cache_dir = 'cache\\';
$this -> assign('app_name', 'Smarty');
$this -> caching = True;
}
}
$Smarty = new Index;
$Smarty -> assign('name', 'Isaac');
$Smarty -> display('name.tpl');
?>
Voili, vloilà, ++
http://www.zmws.com
SAlut,
j'ai pas tout suivis, mais sa
M:\_web.zmwsc\cours\..\..\smarty\internals\core.read_cache_file.php
sa me fait peur :)
je pense que si tu veut utiliser une syntaxe ../ il va te falloir enlever le path de base! car c normale que tu est une erreur !
Il en faut peu pour être heureux !!!!!