Zacznę od końca, czyli od tego, że hosting na home.pl mam w głębokim poważaniu i jeśli hostujesz tam swoje strony – to współczuję.
Ale do rzeczy, musiałem ostatnio zrobić kilka zmian w aplikacji opartej o CodeIgniter, między innymi upload wielu plików. Rzecz zrobiłem, na serwerze developerskim hula aż miło, niestety po przeniesieniu na home.pl hulać przestało. Kilkadziesiąt var_dump’ów później znalazłem błąd w frameworku (nie poprawiony/wykryty w aktualnej 2.1.0 wersji). Błąd znajduje się w bibliotece Upload, w metodzie _file_mime_type w 1058 linii kodu:@exec('file --brief --mime-type ' . escapeshellarg($file['tmp_path']), $output, $return_code);
ktoś się tam przeliterówkował i zamiast ‚tmp_name’ wklawiaturzył ‚tmp_path’. Subtelna różnica, ale żyć nie daje. Błąd pojawia się tylko jeśli nie masz PHP 5.3 z file_info i przedawnionej metody do sprawdzania mime type uploadowanego pliku.
Podsumowując: jeśli nie działa ci dodawanie plików w CI i nie masz file_info w PHP sprawdź swój kod jak powyżej.
PS. Zdarzyło mi się wcześniej używać frameworka Yii, CodeIgniter przy nim jest jak powrót do epoki kamienia łupanego, czy to pod względem możliwości, logiki/udokumentowania kodu czy samej dokumentacji. IMHO CI polecić można tylko do małych projektów.