[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: xlstophp - облом с обработкой прайса
Страницы: 1, 2, 3
Игорь_Vasinsky
Файл http://hdkinozavr.ru/temp/reader.txt - форум не хавает листинг.

вообщем обрабатываю файл XLS 2,1мб 17к строк.

на локалхосте PHP 5.3 - работает на ура.

хостинг sweb.ru php 5.2

вообщем файл проходит метод setOutputEncoding()

и валиться на методе read($file)

тупо белая страница (ошибки не прячу)

файлы до 1мб грузятся, с этим беда. хз. отладил всё на локалке - на хостинге борода.

может ini_set какой нить.

не понимаю блин.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
ini_set( 'upload_max_filesize', '100M' );
ini_set( 'post_max_size', '101M' );
попробуй, сервер Nginx ?, мб отрывает коннект, не дождавшись загрузки.... ?
Игорь_Vasinsky
точно также прошло. снова чисто белая страница. файл грузиться в папку, именно на методе read() валиться всё.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
а оно вообще доходит до read()?, внутри пробовал эхо какое ниить повесить?, и про сервер ты не ответил.

p.s. И раз на локале работает, то значит что то с сервером, либо нжинкс не дожидается, либо чего то там не хватает скрипту, пробуй еще по навешать всяких выводом на экран чего нибудь, что бы буфер заполнялся...
Игорь_Vasinsky
про ngnix хз где глянуть

вот:
<?php
// Test CVS
error_reporting(E_ALL);

require_once $_SERVER['DOCUMENT_ROOT'].'/lib/xlstophp/Excel/reader.php';

set_time_limit(0);
echo '1<br />';
$data = '';

file_put_contents('uploads/temp.txt', '');
chmod('uploads', 0777);
chmod('uploads/temp.txt', 0777);

echo '2<br />';
// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();
echo '3<br />';

// Set output Encoding.
$data->setOutputEncoding('UTF-8');
echo '4<br />';

echo $_SERVER['DOCUMENT_ROOT']."/uploads/".$newfile;
$data->read($_SERVER['DOCUMENT_ROOT']."/uploads/".$newfile);
echo '5<br />';


5 - я уже не вижу.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
а откуда берется $newfile, я чего т не замечаю/не понимаю smile.gif
Игорь_Vasinsky
это начало файла xlstophp.php $newfile - сформировывается новое имя, с этим именем фацл сначала копируется в директорию uploads

потом создаётся temp.txt

потом инициализация объекта класса

$data = new Spreadsheet_Excel_Reader();


далее устанавливается кодировка выходных данных

$data->setOutputEncoding('UTF-8');


потом чтение самого XLS файла (он есть уже и в классе предусмотрен вывод ошибки в случае битого файла)

тут я мониторю положение файла чтобы убедиться что он лежит там где должен и имеет соответств. имя

echo $_SERVER['DOCUMENT_ROOT']."/uploads/".$newfile;


$data->read($_SERVER['DOCUMENT_ROOT']."/uploads/".$newfile);


вот после этого я должен получить массив, но скрипт останавливается.


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
Попробуй все таки по добавлять echo "1..3..5"; в саму функцию read(), что бы было понятно, после чего именно - обрыв, оно же там дальше переходит в _parse()..., может в парсере затык, хотя опять же - на локале все норм., подозрение все же на nginx, сделай файл, типа
<?php
for( $i = 0; $i <= 180; $i++ )
{
sleep(1);
echo $i . "|\n"; flush();
}
Что бы понять что хотя бы 3ри минуты сервер держит коннект, если отрисует все цифры, попробуй тот же цикл, но без эха, а после выполнения цикла, выведи результат $i;, что бы понятно было, влияет ли наполнение буфера, на результат...
Игорь_Vasinsky
с циклом скрипт отсчитал 180 (где то 3 мин работал).

так. значит цикл не даёт ему уснуть.

теперь, мне по логике нужно узнать сколько итераций должно пройти до конца обработки файла. как хз...

я цикл прям в метод read() пихнул. раньше 1-2 сек работал - щас все 180 отсчитал.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
в _parse(), есть echo, закоменченые, раскоменть, посмотришь, там по свитчу переключаются режимы, и отрисовываются, может там затыкается на чем то...
Игорь_Vasinsky
вот что получил в ответ.

Start parse code=0 version=0 substreamType=0 MySQL server has gone away

не понял)))

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
Проверил у себя все воркает, ты библиотеки все подключил на сервере ? "oleread.inc" или как там у тебя, у меня ругнулось еще на ссылку
$this->_ole =& new OLERead();
написал без нее
$this->_ole = new OLERead();
, результат тот же, все отработало..
walerus
Цитата
вот что получил в ответ.
Start parse code=0 version=0 substreamType=0 MySQL server has gone away
не понял)))
Проверь, может Sql сервер унесли laugh.gif
Игорь_Vasinsky
вот в каком виде ты его видешь - все не закомментированные инклуды есть.

убрал ссылку - эффекта ноль.


до 1 мб - то файлы проканывает, вот конкретно с более 2мб - нет.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
walerus
http://phpexcel.codeplex.com/releases/view/88098 - скачай, там куча всяких плюшек ), из xls конвертит во все что хошь ), только что нашел )
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.