Вопрос

Я нахожу это очень странным, должно быть, я что-то не так делаю, но все же ... Я работаю над страницей, используя файлы PHP и TPL. В моем TPL-файле в нижнем колонтитуле есть место для дополнительных строк, если это необходимо.

Например, проверка формы с помощью Javascript.

поэтому в PHP я сделал это:

$foot = "<script type=\"text/javascript\">if(document.getElementById){loadEvents();}</script>";

переменная $ foot затем анализируется, и результат в HTML такой:

<script type="text/javascript">if(document.getElementById)</script>

Итак, {loadEvents ();} пропал без вести.

Кто-нибудь видит, что мне здесь не хватает ... Я серьезно не нахожу это. Я забыл убежать от персонажа или чего-то еще?

Это было полезно?

Решение

Очевидно, что механизм шаблонов, который вы используете , разъедает деталь в фигурных скобках.

Попробуйте что-то вроде:

$foot = "{literal}<script type=\"text/javascript\">if(document.getElementById){loadEvents();}</script>{/literal}";

Другие советы

Похоже, вы используете шаблонизатор, такой как Smarty, который пытается проанализировать все, что он находит в фигурных скобках.

Эта страница из документации smarty объясняет, как сделать smarty игнорировать разделы, которые иначе были бы проанализированы.

Я верю {}, что PHP ожидает переменную внутри них. Я не проверял это, но попробуйте использовать одинарные кавычки вместо двойных кавычек.

Если вы используете smarty, вы можете использовать {literal}.

литерал

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top