Скрипт слишком длинный для выполнения?

flider

Новичок
Скрипт слишком длинный для выполнения?

Добрый день!
Не подскажет ли многоуважамый all куда копать.
Имеем скрипт, в который инклюдом включен html-файл (несколько абзацев текста). В скрипте при выполнении некоего условия имеется Header. Загадка в том, что этот Header не выполняется. Но если убирать из html-файла абзацы по одному, то в какой-то момент Header начинает выполняться.
При этом, если абзацы не убирать и добавить после Header что-нибудь вроде print $a, то этот принт выполняется.
Вопрос: есть некий предел по количеству символов в скрипте (включая инклюды)? Если нет, то с чем связан такой трабл?
Спасибо.
 

moxnatiy

Новичок
Предел есть.
Размер выводящего буфера.

По поводу решения проблемы
1) Включи вывод ошибок и посылай заголовки до вывода html-я
2) Посмотри в сторону ob_*
 

flider

Новичок
Tor
Большое спасибо.
Не подскажете ли еще - поместить заголовок выше инклюда возможности нет. На наличие лишних символов проверила - не обнаружила (лишние пробелы убрала). Толку ноль, как еще можно решить проблему?

moxnatiy
Большое спасибо.
Что есть "ob_*"?
 

Фанат

oncle terrible
Команда форума
flider
поместить заголовок выше инклюда возможности нет.
читать надо внимательно. и думать. хоть немного.
выше или ниже - НЕ ИМЕЕТ значения.
заголовок может выводиться хоть последней строчкой в скрипте.
лишь бы до него ничего не выводилось.
тем более, что вывод текста перез заголовком не имеет смысла.

-~{}~ 20.02.06 15:59:

На наличие лишних символов проверила
НЕ НАДО проверять наличие лишних пробелов.
Надо смотреть сообщение об ошибке, и исправлять его. если там написано о пробелах - убрать их.
если там написано о другой строчке - исправлять в ней.
понимаешь разницу? или нет?
 

flider

Новичок
Фанат
В инклюде есть echo, от него никуда не деться. Но почему, если во всем виноват он, ошибка возникает не всегда, а только в случае большого предварительного текста? Если же урезать этот текст на 3/4, то ошибки нет.
Да, указание в собщении об ошибке именно на строку с echo, но избавиться от него я не могу.
Может быть есть другой способ перенаправления нежели Header? Не подскажете, какой?
Спасибо.

ЗЫ. Я понимаю, что Вы устали от чайниковских вопросов, но, как верно было замечено в одной конфе, если бы на все вопросы можно было бы ткнуть пальцем в мануал, то форумы поддержки были не нужны, нужны были бы только сборники мануалов.
 

Фанат

oncle terrible
Команда форума
Но почему, если во всем виноват он, ошибка возникает не всегда,
см.вторую строчку ответа moxnatiy
Да, указание в собщении об ошибке именно на строку с echo, но избавиться от него я не могу.
это заблуждение.
поскольку этот эхо явно не нужно до хидера - значит, у тебя неправильная структура программы.
значит, лечить надо не симптом, а болезнь - исправлять структуру.
твоя программа делает одновременно две несовместимые вещи.

ты хот это-то поняла?
или до сих пор - нет?
 

flider

Новичок
Tor

В общих чертах. Эхом выводятся чекбоксы, а в зависимости от выбранного чекбокса хидером идет перенаправление на другую страницу.

Фанат
Вероятно не поняла. В особенности для меня непонятно, почему таки в отдельных случаях эти две несовместимые вещи таки выполняются.
 

Фанат

oncle terrible
Команда форума
Эхом выводятся чекбоксы, а в зависимости от выбранного чекбокса хидером идет перенаправление на другую страницу.
тяжёлый случай.
срочно читать вот это: PHP FAQ: Самые основы. Как работает PHP.
и предупреждаю - пожалуйста, без новичкового снобизма и стонов про посыл в документацию.
если тебе не нравится читать текст по ссылкам, то лучше вообще ничего сюда не писать, а просто тихо исчезнуть.
 

flider

Новичок
Фанат

Новичковым снобизмом не страдаю. Если дают ссылку на документ, где все подробно описано, только радуюсь, но, надеюсь, могу оставить за собой право спрашивать по текстам указанных документов.
Ушла читать.
Мерси.
 

_RVK_

Новичок
Если же урезать этот текст на 3/4, то ошибки нет
Все очень просто. У php есть настройка output_buffering, когда его значение>0, вывод складывается в буффер, пероед выводом. В твоем случае размер буффера указанн больше чем твои 3/4 текста. Сделай его равным 0.
 

flider

Новичок
_RVK_

Спасибо за идею, но боюсь, что мне вряд ли удасться убедить masterhost изменить его настройки php.
 

Фанат

oncle terrible
Команда форума
НАСТРОЙКИ
PHP
ЗДЕСЬ
НЕ
ПРИ
ЧЁМ!

здесь имеет место непонимание нашей собеседницей - натуральной блнодинкой, элементарнейших принципов, на которых работает написанный ею скрипт
 

_RVK_

Новичок
flider
повторяю: Сделай его равным 0
на локальной машине, именно для того что бы не зависеть от настроек хостинга!
 

Tor

Новичок
_RVK_


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

_RVK_

Новичок
хватит нести чушь
если у тебя не хватает ...чего-то, что бы понять причину проблем, то не нужно давать бестолковых советов
Странный наезд. Я о причинах тут не говорил. О них досаточно сказанно в факе.
 
Сверху