Страница 1 из 1

Проблема с PHP кодом.

Добавлено: 10 июн 2008, 22:26
rider007
У меня такая проблема. Не выполняется функция модуля на сайте. Такая ошибка появляется. На разных форумах пытался исправить, так и не получилось.

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 не существует. Как исправить?

Посоветуйте пожалуйста что-нибудь.

Re: Проблема с PHP кодом.

Добавлено: 11 июн 2008, 11:21
Хыиуду
Написать функцию formats(). Или подключить модуль, где она описана.

Re: Проблема с PHP кодом.

Добавлено: 12 июн 2008, 00:43
rider007
Можно пожалуйста поподробнее, куда написать функцию или подключить модуль?
Решил написать код от начала файла до ошибки.

Код: Выделить всё

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

Re: Проблема с PHP кодом.

Добавлено: 12 июн 2008, 09:16
Duncon

Re: Проблема с PHP кодом.

Добавлено: 14 июн 2008, 21:58
Хыиуду
Выведите перед ошибкой значение $func. Сдается мне, это у вас какой-то скаляр. А вы его в строке с ошибкой пытатесь запускать как функцию.