2012-02-11 3 views
5

У меня есть проблема в CodeIgniter - после того, как я загрузить его на сервер я требующий файл в модели из библиотеки папкиAppPath CodeIgniter не работает на сервере

<?php 
require_once(APPPATH.'libraries/MY_Model.php'); 
Class scroll_news_model extends MY_model 
{ 
public function __construct() 
{ 
    parent::__construct("scroll_news"); 
} 
} 

этот код работает отлично в моей LOCALHOST среде но я продолжаю получать эту ошибку после ее загрузки:

Fatal error: require_once() [function.require]: Failed opening required 'application/libraries/MY_Model.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/arab2day/public_html/temp/arab2day/application/models/scroll_news_model.php on line 2

ответ

1

Если вы пытаетесь расширить CI_Model класс, MY_Model.php принадлежит в /core каталоге, а не /libraries, и вам не нужно, чтобы включить его - он будет загружен автоматически при загрузке класса базовой модели.

Так расширяются основные классы, расширяя регулярные несущественные «библиотеки», несколько отличается. Подробнее об этом здесь:

http://codeigniter.com/user_guide/general/core_classes.html

Насколько буквальная проблема идет, Lepidosteus делает хорошую точку о чувствительности к регистру и ОС, я столкнулся с этим вопросом меня сами несколько раз.

8

Проверьте регистр имен файлов; окна не имеют разницы между ABC.php и abc.php, но linux делает.

+0

thank you very muchhhhhh –

+0

Нет проблем, нажмите кнопку «подтвердить ответ» слева, если это ответит на ваш вопрос. – Lepidosteus

+0

@RamySelim: Это не то, как вы расширяете класс модели в Codeigniter, вы загружаете файл без необходимости , Кроме того, CI нормализует имена файлов до некоторой степени, если вы используете класс loader, а не 'include'. –

Смежные вопросы