Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Подключение файла в модуль Joomla


Автор: benq4400 4.2.2010, 12:10
начало обсуждения здесь: http://forum.vingrad.ru/forum/topic-290214.html

Кодировка слетает ГДЕ? В записанном файле? 
Что значит "пропадают шаблоны оформления"? Шаблоны стираются с диска? Что вообще имеется в виду под словом "шаблоны оформления"?
,


ссылки из html не исчезают. Слетает кодировка в модуле. Попробую объяснить. В нормальном виде есть шапка на странице, есть блоки с рекламой, авторизацией, лентой новостей. Если выполнить  модуль, в котором имеется подключение к файлу excel.php страница принимает вот такой вид:

Автор: Ипатьев 4.2.2010, 12:13
При чем здесь вид страницы? РНР генерирует не картинки. РНР генерирует HTML код.
Чем отличается HTML код до подключения и после? Посмотреть надо самостоятельно.

Автор: benq4400 4.2.2010, 12:23
ничем не отличается. вообще

Автор: benq4400 4.2.2010, 13:00
Ещё он ругается вот так:
Fatal error: Can't open 1.xls. It may be in use or protected in /home/u77777/mysite.ru/www/catalog/class.writeexcel_olewriter.inc.php on line 87

а на 87-й строке вот это:
Код

85.  if (!$fh) {
86.  trigger_error("Can't open $OLEfile. It may be in use or ".
87. "protected", E_USER_ERROR);

Автор: Ипатьев 4.2.2010, 13:53
Цитата(benq4400 @  4.2.2010,  12:23 Найти цитируемый пост)
ничем не отличается. вообще 

Если HTML ничем не отличается, то и отображение ничем не отличается.
только я сомневаюсь, что не отличается. Поскольку Fatal error прерывает исполнение программы.
Хотя странно, почему оно выкидывает Fatal
Попробуйте убрать 
Код
, E_USER_ERROR
 из кода

Добавлено @ 13:54
С другой стороны, дело не в сообщении об ошибке, а в самой ошибке.
Он почему-то не открывается. Должно быть сообщение РНР об ошибке открытия файла - почему он не открылся.

Автор: benq4400 4.2.2010, 14:18
', E_USER_ERROR' убрал, содержимое модуля выполняется нормально. однако подключаемый файл не выполняется и теперь появляется куча сообщений о предупреждениях, например:
Warning: tempnam() [function.tempnam]: open_basedir restriction in effect. File() is not within the allowed path(s): (/home/u777777/) in
Warning: fputs(): supplied argument is not a valid stream resource in
Notice: Can't open open.xls. It may be in use or protected in

с указанием на этот класс 'class.writeexcel_olewriter.inc.php'

Автор: Ипатьев 4.2.2010, 14:26
ну вот, теперь уже ближе к истине.
Теперь осталось прочесть сообщение об ошибке, и исправить.

вместо tempnam надо использовать что-то другое.

или посмотреть в документации - может быть, он умеет задавать путь к файлу

Автор: benq4400 4.2.2010, 15:29
может стоит изменить принцип работы? например, передавать массив через сессию в файл, а в самом файле после выполнения делать редирект обратно?

Автор: Ипатьев 4.2.2010, 15:33
Судя по приведенной ошибке, дело не в принципе работы
Судя по приведенной ошибке, не должен работать и отдельный вызов тоже

Автор: benq4400 5.2.2010, 15:36
а может данная проблема заключаться в safe_mode? из-за того, что он включен или выключен

Автор: Ипатьев 8.2.2010, 14:51
нет, safe_mode здесь не при чем.
данная проблема может заключаться в open_basedir. и заключается

Автор: Severyanin 9.2.2010, 05:07
А может, рросто не стоят права на чтение и выполнение для этой папки или файла, и просто сама система не дает с ним работать? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)