У меня такая проблема. Не выполняется функция модуля на сайте. Такая ошибка появляется. На разных форумах пытался исправить, так и не получилось.
Fatal error: Call to undefined function formats() in /.../.../public_html/functions/build_functions.php on line 55
Так выглядит часть этого кода -
$page_modules = extract_page_modules($page_details["items_file"]);
foreach($page_modules as $page_module){
$module_info = explode("|",$page_module);
$module_name = $module_info[0];
$func = $module_info[1];
if(!function_exists($func))
include_once(DOC_ROOT."/modules/".$module_name.".php");
$func(); Здесь что-то не так
}//foreach
Из ошибки видно что функция formats не существует. Как исправить?
Посоветуйте пожалуйста что-нибудь.
Проблема с PHP кодом.
Написать функцию formats(). Или подключить модуль, где она описана.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Можно пожалуйста поподробнее, куда написать функцию или подключить модуль?
Решил написать код от начала файла до ошибки.
Решил написать код от начала файла до ошибки.
Код: Выделить всё
function build_page($p_details=0,$public=0,$structure=0){
global $page_details,$forms,$menus,$info;
build_language();
$GLOBALS["smarty"]->assign("language",$GLOBALS["language"]);
$info = $GLOBALS["Member"]->info();
$page_details = $GLOBALS["Get"]->page_details($p_details);
if(!empty($page_details["handler"])){
if(file_exists(DOC_ROOT."/modules/".$page_details["handler"].".php"))
include_once(DOC_ROOT."/modules/".$page_details["handler"].".php");
else
load_page(URL."/index.php?page=my_handshakes&err_id=19");
}//if
if(!file_exists(DOC_ROOT."/themes/".$GLOBALS["THEME"]."/layout/".$page_details["items_file"].".inc.php"))
load_page(URL."/index.php?page=my_handshakes&err_id=19");
$page_auth = extract_page_auth($page_details["items_file"]);
foreach($page_auth as $auth_func){
$auth_func();
}//foreach
$title = build_title($page_details["items_file"]);
$page_forms = extract_page_forms($page_details["items_file"]);
foreach($page_forms as $page_form){
build_form($page_form);
}//foreach
$page_modules = extract_page_modules($page_details["items_file"]);
foreach($page_modules as $page_module){
$module_info = explode("|",$page_module);
$module_name = $module_info[0];
$func = $module_info[1];
if(!function_exists($func))
include_once(DOC_ROOT."/modules/".$module_name.".php");
$func(); Здесь что-то нужно исправить...
}//foreach
Выведите перед ошибкой значение $func. Сдается мне, это у вас какой-то скаляр. А вы его в строке с ошибкой пытатесь запускать как функцию.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.