Просмотров: 51643
Дата последнего изменения: 17.11.2020
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
3
4
5
Недоступно в лицензиях:
Ограничений нет
| Цитатник веб-разработчиков.
TeppopucT: И правда, все проблемы в руках! Ищите ошибки в коде!!! Все теги должны отвечать стандартам. А Битрикс, подхватит!!! Который раз помогает очистка кода. Пусть и ручная работа, и кропотливая, но с достойным финалом! |
Не удалось обнаружить код вызова компонента
Довольно распространенная ошибка, когда вы в режиме редактирования пытаетесь отредактировать параметры какого-то компонента на странице. Хоть в коде и присутствует строка $APPLICATION->IncludeComponent()
(вызов компонента), всё равно иногда появляется ошибка Не удалось обнаружить код вызова компонента. К сожалению, универсального решения данной проблемы нет.
Ошибка может возникать из-за разных причин:
- Код вызова компонента не взят в отдельные
<? ?>
.
Решение: проверить отделенность кода компонента от другого php-кода на странице.
То есть, если у вас на странице php-код в таком виде:
<?
php-код
компонент
php-код
?>
то будет ошибка.
Необходимо, чтобы было так:
<?
php-код
?>
<?
компонент
?>
<?
php-код
?>
Можно также попробовать вставить такую конструкцию перед вызовом компонента: <?/**/?>
.
- Ошибки в html коде на странице.
Решение: проверить валидность html кода, убрать все html-комментарии со страницы.
-
Несоответствие кодировки файла. До версии 20.100.0 модуля main
|
Несоответствие кодировки файла с проектом в целом.
Решение: проверить кодировку файла. Проверить на ошибки на странице Проверка системы. В случае ошибки с кодировкой установить настройки PHP:
Для сайта с кодировкой windows-1251:
php_value mbstring.func_overload 0
php_value mbstring.internal_encoding cp1251
Для сайта с кодировкой UTF-8:
php_value mbstring.func_overload 2
php_value mbstring.internal_encoding utf-8
С версии 20.100.0 Главного модуля (main) требуется удаление настройки PHP mbstring.func_overload. Эта опция более не требуется и не поддерживается платформой.
Начиная с PHP 5.2.9 php_value mbstring.func_overload 2 в .htaccess не работает...
|
В общем случае это настраивается через панель хостинга или с помощью техподдержки хостинга. На некоторых хостингах реализована возможность указывать mbstring.func_overload в .htaccess для более новых версий PHP.
На собственном сервере параметр mbstring.func_overload может быть установлен в httpd.conf или php.ini.
|
|
- Несоответствие между владельцем файла и пользователем под которым система файлы редактирует.
Решение: проверить права пользователя.
- Взаимное влияние аналогичных компонентов.
Решение: удалить несколько аналогичных компонентов рядом с неработающим.