У меня нет опыта работы в Smarty, я пытаюсь изменить файл .tpl
из программного обеспечения, которое не сделано, я просто добавил теги {php} {/php}
в файл .tpl
без код внутри них вообще, и его выходы кажутся пустым. Сначала у меня был некоторый код, но он выводил пустую страницу, поэтому я начал удалять строки, и теперь нет никаких строк внутри тегов {php} {/php}
, но это делает это. Что я здесь делаю неправильно?с помощью тэгов {php} в smarty выводит пустую страницу
ответ
Какая версия Smarty вы используете? Тег PHP был устаревшим, а с 3.1. может использоваться только с обратной совместимостью.
http://www.smarty.net/docs/en/language.function.php.tpl
Это лучше, если это возможно, чтобы сохранить ваш PHP в отдельном классе или контроллере (таким образом он доступен для других шаблонов, а), но если вам действительно нужно, чтобы включить его на странице, просто включает smartybc класс, как он говорит здесь: http://www.smarty.net/docs/en/bc.tpl
<?php
// instead of
require_once('path/to/smarty/libs/Smarty.class.php');
$smarty = new Smarty();
// use
require_once('path/to/smarty/libs/SmartyBC.class.php');
$smarty = new SmartyBC();
?>
Кроме того, если вы хотите, чтобы увидеть ошибки PHP (это действительно раздражает, что вы просто получите пустую страницу, когда что-то идет не так, делает его трудно отлаживать) вам может активировать режим отладки, перейдя в config/config.inc.php и найдя следующие строки и изменив «off» на 'on' для первого и установить значение true
/* Debug only */
@ini_set('display_errors', 'on');
define('_PS_DEBUG_SQL_', true);
И это должно отображать ошибки PHP и SQL для вас.
Нельзя использовать теги {php}, поскольку они описаны как устаревшие в Smarty docs. Если вы хотите, чтобы какой-то код запускался, попробуйте подготовить плагины для smarty, как описано here.
- 1. Smarty {PHP} в TPL дает пустую страницу
- 2. Мой php-скрипт выводит пустую страницу
- 3. smarty changes делает пустую страницу
- 4. Почему Twig выводит пустую страницу?
- 5. prepareForSegue выводит меня на пустую страницу
- 6. Загрузка на php-страницу с помощью AJAX с использованием Smarty
- 7. Проверка контроллера Показать страницу с помощью Rspec, она дает ошибку nil & и выводит пустую страницу
- 8. MySQL выводит результат строковые шесть раз (с помощью Smarty)
- 9. Ghostscript выводит пустую страницу PDF при попытке снять защиту
- 10. session_start(); echo SID; выводит пустую страницу при обновлении?
- 11. php mysql_select_db возвращает пустую страницу
- 12. php перенаправление на пустую страницу
- 13. PHP создает пустую веб-страницу
- 14. PHP-код, показывающий пустую страницу
- 15. Refresh дает пустую страницу php
- 16. открытое .php показать пустую страницу
- 17. scraper php возвращает пустую страницу
- 18. PHP Дает мне пустую страницу
- 19. PHP-скрипт, отображающий пустую страницу
- 20. Php код получает пустую страницу
- 21. PHP _GET отображает пустую страницу
- 22. Wildcard импорт с помощью тэгов
- 23. MPDF создает пустую страницу
- 24. Назначить переменную Smarty PHP с помощью Smarty 3
- 25. Показать пустую страницу на прямой загрузке (PHP)
- 26. PHP возвращает пустую страницу после выполнения скрипта
- 27. Apache обслуживает пустую страницу
- 28. Webmatrix показывает пустую страницу
- 29. PHP Форма входа в систему перенаправляется на пустую страницу php
- 30. WebScraper показывает пустую страницу, нет вывода? PHP
Спасибо! Как я уже говорил, мне нужно отредактировать программное обеспечение, которое не создано мной, которое использует Smarty. Для того, что я вижу в одном из кодовых файлов, похоже, это версия 3.1. И мне просто нужен файл header.tpl для выполнения php-кода, даже если хорошо читать всю документацию Smarty, мне нужно сделать это только сейчас, и я, вероятно, буду читать его позже, учитывая, сколько программ использует открытые источники Smarty – Pablo
Да, обязательно включите отладку, надеюсь, это поможет вам разобраться. – spacebean