For Programmers: Free Programming Magazines  


Home > Archive > PHP Smarty Templates > April 2005 > RE: [SMARTY] Upgrade to debian testing breaks smarty sites









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author RE: [SMARTY] Upgrade to debian testing breaks smarty sites
Benjamin Sims

2005-04-14, 4:00 pm

More info:

I narrowed the problem down to the foreach loop on line 1635. For some
reason,

foreach ((array)$params['resource_base_path'] as $_curr_path) {

was always making the $_curr_path 'Array'.

Replacing this line with:

$_curr_path =3D $params['resource_base_path'];

and removing the corresponding {} makes the test code work.

Interestingly, one of my other apps now fails with an error of:

Warning: preg_match() expects parameter 2 to be string, array given in
/usr/share/php/smarty/libs/Smarty_Compiler.class.php on line 1520

Fatal error: Smarty error: [in index.tpl line 1]: syntax error: invalid
attribute name: 'Array' (Smarty_Compiler.class.php, line 1524) in
/usr/share/php/smarty/libs/Smarty.class.php on line 1088

This suggests to me that *something* is going on with the treatment of
Arrays by PHP, but I am clueless to come up with an idea for what....


Ben



-----Original Message-----
From: Monte Ohrt [mailto:monte@newdigitalgroup.com]=20
Sent: 14 April 2005 15:55
To: Sims, Benjamin
Cc: Smarty
Subject: Re: [SMARTY] Upgrade to debian testing breaks smarty sites


See if you can read the index.tpl file:

readfile($smarty->template_dir . '/index.tpl');





Sims, Benjamin wrote:

>Thanks,
>=20
>I don't think it is an include problem, since the error is being thrown


>from smarty itself.
>=20
>I tried adding to the include path as you mention, but result is the=20
>same.
>=20
>Ben
>
>-----Original Message-----
>From: Riviere Informatique SARL [mailto:svdb@rivinfo.com]
>Sent: 14 April 2005 15:12
>To: Sims, Benjamin
>Cc: smarty-general@lists.php.net
>Subject: Re: [SMARTY] Upgrade to debian testing breaks smarty sites
>
>
>Ah. Maybe you should include the following line in your php.ini
>(/etc/php4/apache/php.ini)
>include_path =3D "/usr/share/php/smarty/libs"
>
>That way you don't need to add a complete path in your include but can=20
>just do
>include('Smarty.class.php')
>
>There's loads of other programs in that directory that Smarty probably=20
>needs. Don't forget to stop/start your apache after this.
>
>I'm running this on Debian unstable and it runs fine.
>
>Regards,
>Steven.
>
>Sims, Benjamin wrote:
>
>Thanks, it is www-data but this is what it was before. I have set up=20
>the
>
>following simple script as a test:
>
>
>
>//php code -----------------------------------------------------------
>
><?php
>
>include('/usr/share/php/smarty/libs/Smarty.class.php');
>
>
>
>// create object
>
>$smarty =3D new Smarty;
>
>
>
>//config
>
>$smarty->template_dir =3D
>
>'/var/www/ioc3.unesco.org/www/apps/test/templates/';
>
>$smarty->compile_dir =3D
>
>'/var/www/ioc3.unesco.org/www/apps/test/templates_c/';
>
>$smarty->cache_dir =3D '/var/www/ioc3.unesco.org/www/apps/test/cache/';
>
>$smarty->config_dir =3D=20
>'/var/www/ioc3.unesco.org/www/apps/test/configs/';
>
>
>
>// display it
>
>$smarty->display('index.tpl');?>
>
>//end code -----------------------------------------------------------
>
>
>
>The index.tpl file contains only:
>
>
>
>'This is a test'
>
>
>
>I have also executed (to be sure):
>
>
>
>Chown -R www-data /var/www/myserver.com/www/apps/test
>
>Chmod 777 -r /var/www/myserver.com/www/apps/test
>
>
>
>
>
>Still cannot read resource! Is there any way I can alter Smarty.class=20
>to
>
>get a full path/name for the template it is going for?
>
>
>
>Ben
>
>
>
>
>
>
>
>-----Original Message-----
>
>From: Riviere Informatique SARL [mailto:svdb@rivinfo.com]
>
>Sent: 14 April 2005 14:07
>
>To: Sims, Benjamin
>
>Cc: smarty-general@lists.php.net
>
>Subject: Re: [SMARTY] Upgrade to debian testing breaks smarty sites
>
>
>
>
>
>Hi Benjamin,
>
>
>
>Check the access rights on the template directories and files. The user
>
>running your apache server may have changed. Go to /etc/apache and=20
>check
>
>the values of 'User' and 'Group' in the
>
>httpd.conf file (I believe the default is www-data).
>
>(Or do a 'ps -ef | grep apache')
>
>
>
>Regards,
>
>Steven.
>
>
>
>Sims, Benjamin wrote:
>
>
>
> =20
>
>I've had a rather catastrophic failure upgrading from Debian stable to
>
>testing (ie to PHP 4.3.3 and apache 1.3).
>
>
>
>I now receive a "Warning: Smarty error: unable to read resource:
>
>"index.tpl" in /usr/share/php/smarty/libs/Smarty.class.php on line
>
>1088" when accessing the home page.
>
>
>
>The templates are in the same place as before, but it seems they can no
>
> =20
>
>
>
> =20
>
>longer be read.
>
>
>
>Any ideas much appreciated!
>
>
>
>Benjamin
>
>
>
>=20
>
>
>
> =20
>
>
>
> =20
>
>
>
>
>
>
>!DSPAM:425e72da181122378111414!
>
> =20
>

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com