вопрос по PEAR::Spreadsheet_Excel_Writer

evgen386

Новичок
вопрос по PEAR::Spreadsheet_Excel_Writer

код взят из статьи на этом сайте.

PHP:
require_once "Spreadsheet/Excel/Writer.php";
$xls =& new Spreadsheet_Excel_Writer('binary.xls');
$sheet =& $xls->addWorksheet('Binary Count');

for ( $i=0;$i<11;$i++ ) {
   $sheet->write($i,0,decbin($i));
}

$xls->close();
локально файл "binary.xls" создаеться
а у хостера нет, и ошибок не пишет...
что может быть то?

а вот это работает везде отлично
PHP:
require_once "Spreadsheet/Excel/Writer.php"; 
$xls =& new Spreadsheet_Excel_Writer(); 
$xls->send("test.xls"); 
$sheet =& $xls->addWorksheet('Binary Count'); 

for ( $i=0;$i<11;$i++ ) { 
     $sheet->write($i,0,decbin($i)); 
} 

$xls->close();
 

kvn

programmer
ErrorHandling - назнач на функцию, и посмотри, что происходит..
в самом простом случае print_r() - поможет...:)
 

crocodile2u

http://vbolshov.org.ru
Скорее всего, дело в банальном отсутствии прав на запись в директорию, в кот. лежит твой скрипт.
 

evgen386

Новичок
права на запись

Автор оригинала: crocodile2u
Скорее всего, дело в банальном отсутствии прав на запись в директорию, в кот. лежит твой скрипт.
права на директорию 777, вот этот код работает там же, т.е. файлик создаеться в него все пишеться..
PHP:
<?
  $str = "test";
  $fp = fopen("test.txt", "w+");
  fwrite($fp,$str);
  fclose($fp);
?>
 

crocodile2u

http://vbolshov.org.ru
То есть, если ты хочешь сохранить XLS, то ничего не выходит, а если отправляешь файл с заголовком "Content-type: disposition" (или что-то в этом роде), то все нормально?

Может быть, проблема в несоответствии версий пакетов PEAR? Для SpreadsheetExcelWriter нужен пакет OLE (PEAR Package: OLE 0.5 or newer - это для SEW - 0.8) - не младше определенной версии. Может быть, у тебя на локалке версии `compatible`, а на хостинге - нет? у меня как-то было нечто подобное.
 

evgen386

Новичок
Автор оригинала: crocodile2u
То есть, если ты хочешь сохранить XLS, то ничего не выходит, а если отправляешь файл с заголовком "Content-type: disposition" (или что-то в этом роде), то все нормально?
точно.

Может быть, проблема в несоответствии версий пакетов PEAR? Для SpreadsheetExcelWriter нужен пакет OLE (PEAR Package: OLE 0.5 or newer - это для SEW - 0.8) - не младше определенной версии. Может быть, у тебя на локалке версии `compatible`, а на хостинге - нет? у меня как-то было нечто подобное.
я на хостинг
Spreadsheet_Excel_Writer и OLE сам кидал,
версия 1.7 вроде.
 

cadet354

Guest
У меня аналогичная ситуация:
поставил по совету обработку, выскакивает error:
Can't create temporary file и
OLE Error: Can't create temporary file
поставил скриптам и папкам разрешение на запись, не помогло.
Версии последнии, сегодня только закачал.

-~{}~ 01.09.04 16:53:

Решил проблему с помощью
$xls-> setTempDir("test/tmp");
соответственно дал права туда писать.
 

crocodile2u

http://vbolshov.org.ru
Cadet, точно!
прочитал твой пост и вспомнил, что была у меня такая же неприятность, и также точно решилась. Evgen... , прошу прощения за ответы несколько не в тему. давно уже не брался за ESW
 
Сверху