smarty template engine
Thursday, January 08, 2009  
download | documentation | faq | forum | mailing lists | changelog | contribs 


search for in the  


Bab 17. Pemecahan masalah

Kesalahan Smarty/PHP

Smarty dapat menangkap banyak kesalahan seperti kekurangan atribut tag atau nama variabel salah. Jika ini terjadi, anda akan melihat kesalahan mirip dengan yang berikut:

Teladan 17-1. Kesalahan Smarty

Warning: Smarty: [in index.tpl line 4]: syntax error: unknown tag - '%blah'
       in /path/to/smarty/Smarty.class.php on line 1041

Fatal error: Smarty: [in index.tpl line 28]: syntax error: missing section name
       in /path/to/smarty/Smarty.class.php on line 1041

Smarty memperlihatkan kepada anda nama template, nomor baris dan kesalahan. Setelah itu, kesalahan terdiri dari nomor baris aktual dalam Smarty class di mana kesalahan terjadi.

Ada kesalahan-kesalahan tertentu di mana Smarty tidak bisa menangkapnya, seperti kekurangan tag penutup. Tipe kesalahan ini biasanya berakhir dalam kesalahan penguraian waktu-kompilasi PHP.

Teladan 17-2. Kesalahan penguraian PHP

Parse error: parse error in /path/to/smarty/templates_c/index.tpl.php on line 75

Ketika anda menemukan kesalahan penguraian PHP, nomor baris kesalahan akan merujuk ke naskah PHP terkompilasi, BUKAN template itu sendiri. Biasanya anda bisa melihat template dan menandai kesalahan syntaks. Ini adalah beberapa hal umum untuk dicari: kekurangan tag penutup untuk {if}{/if} or {section}{/section} , atau syntaks dari logika di dalam tag {if}. Jika anda tidak bisa menemukan kesalahan, anda mungkin harus membuka file PHP terkompilasi dan pergi ke nomor baris untuk mencari di mana lokasi kesalahan pada template.

Teladan 17-3. Kesalahan umum lainnya

Warning: Smarty error: unable to read resource: "index.tpl" in...
or
Warning: Smarty error: unable to read resource: "site.conf" in...

Fatal error: Smarty error: the $compile_dir 'templates_c' does not exist,
or is not a directory...

  • Baik $compile_dirtidak disetel dengan benar, direktori tidak ada, ataupun templates_c adalah sebuah file dan bukan sebuah direktori.

Fatal error: Smarty error: unable to write to $compile_dir '....

Fatal error: Smarty error: the $cache_dir 'cache' does not exist,
or is not a directory. in /..

  • This means that $caching is enabled and either; the $cache_dir is incorrectly set, the directory does not exist, or cache/ is a file and not a directory.

Fatal error: Smarty error: unable to write to $cache_dir '/...

Lihat juga debugging, $error_reporting dan trigger_error().




 

credits 

Smarty Copyright © 2002-2008
New Digital Group, Inc.

All rights reserved.