2017-02-09 4 views
0

У меня есть этот код:

function saveField($field, $id, $module, $value) 
{ 

    $bean = BeanFactory::getBean($module, $id); 

    if (is_object($bean) && $bean->id != "") { 

     if ($bean->field_defs[$field]['type'] == "multienum") { 
      $bean->$field = encodeMultienumValue($value); 
     }else if ($bean->field_defs[$field]['type'] == "relate" || $bean->field_defs[$field]['type'] == 'parent'){ 
      $save_field = $bean->field_defs[$field]['id_name']; 
      $bean->$save_field = $value; 
      if ($bean->field_defs[$field]['type'] == 'parent') { 
       $bean->parent_type = $_REQUEST['parent_type']; 
       $bean->fill_in_additional_parent_fields(); // get up to date parent info as need it to display name 
      } 
     }else{ 
      $bean->$field = $value; 
     } 
     //return here will work 
     $bean->save(); //this works 
     //nothing works here 
     return getDisplayValue($bean, $field); 
    } else { 
     return false; 
    } 

} 

Проблема здесь состоит в том, что что-нибудь под

$ bean-> Сохранить()

не будет работать. Но я знаю, что save работает, когда значения обновляются. Итак, как я могу отладить эту проблему?

Я уже пробовал:

return var_dump($bean->save()); 
return print_r($bean->save()); 
if($bean->save()){ 
return "1"; 
}else{ 
return "2"; 
} 

И никто из тех, кто выше работал я до сих пор ничего не получить в моем возвращении.

+0

Какие-либо ошибки PHP регистрируются? Где находится этот файл? Какую версию ты используешь? – Reisclef

ответ

1

Возможно, что-то вроде обработчика логики after_save, который выполняет или вызывает фатальную ошибку или выполняет выход.

+0

проверит крючки для этого модуля. благодаря! – hungrykoala

0

Попробуйте использовать xdebug, это должно позволить вам дополнительно исследовать метод сохранения, который терпит неудачу.