Ошибка при загрузке файла создаваемого налету если размер более 2МБ

serjogin

Новичок
Ошибка при загрузке файла создаваемого налету если размер более 2МБ

Написал следующий код

PHP:
<?php
if (@!$report_full)
	{
	session_start();
	echo '<html>
	<body><center>
	<form action="test_xls.php" method="post" name="form_print" style="position:absolute; top:-20px;">
  	<textarea name="report_full" cols="1" rows="1" style="border: none; color: white;">'.$_SESSION["report_full"].'</textarea><br />
	<input type="submit" value="Загрузить файл" /><br />
	<a href="https://10.91.11.110/index.php?p=12" />Вернуться</a>
	</form>
	</center></body></html>';
	}
else
	{
	header("Content-type: application/vnd.ms-excel");
	header('Content-disposition: attachment; filename="report_' . date("Y-m-d") . '.xls"');
	print (str_replace("<br />", ", ", $report_full));
	echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=https://10.91.11.110/index.php?p=12">';
	}
?>
Через переменную сессии
PHP:
$report_full
передается содержимое для создания файла EXCEL.
После нажания на кнопку Загрузить файл формируется файл и предлагается к загрузке пользователю.

Если создаваемый файл размером до 2-х МБ то все работает отчлично, иначе ошибка 500.
Изменение параметра UPLOAD_MAX_FILESIZE не подходит, т.к. влияет только на файл загружаемый на сервер (проверял).

Подскажите, что можно сделать в данной ситуации??? :(
 

dimagolov

Новичок
вау. тут и register globals on, и полное непонимание вообще.

объясни по-русски, что должен делать твой скрипт?
 

serjogin

Новичок
Автор оригинала: dimagolov
вау. тут и register globals on, и полное непонимание вообще.

объясни по-русски, что должен делать твой скрипт?
Вопрос в том, что нужно сделать, что бы при срабатывании данного блока
PHP:
header("Content-type: application/vnd.ms-excel"); 
header('Content-disposition: attachment; filename="report_' . date("Y-m-d") . '.xls"'); 
print (str_replace("<br />", ", ", $report_full));
, если формируемый файл больше 2МБ (т.е. длина переменной $report_full больше 2097152 символов/байтов), что бы он формировался, а не вылазила ошибка.
 

Фанат

oncle terrible
Команда форума
для этого надо прочесть сообщение об ошибке и исправить её
 

serjogin

Новичок
Автор оригинала: *****
для этого надо прочесть сообщение об ошибке и исправить её
Вылазит вот такое сообщение об ошибке:

Веб-узел не может отобразить страницу
HTTP 500
Возможные причины:
Веб-узел находится в состоянии обслуживания.
Программа веб-узла содержит ошибку.

Попробуйте сделать следующее:
Обновите страницу.

Перейдите на предыдущую страницу.

В логах Apache ошибок нет.
 

Dreammaker

***=Ф=***
> быть такого не может...

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

dimagolov

Новичок
подумалось, а нгинкс свои ошибки пишет только у себя или это и у апача отображается в логах тоже...
если php как модуль апача, который проксируется через nginx, то у апача будет 500, у него же ошибка произошла а кто запрашивает (прокся или клиент) он не в курсе
 
Сверху