Forum Webscript.Ru

Программирование => PHP => Тема начата: MXM от 07 Мая 2004, 10:07:20

Название: запись в текстовый файл большого количества информации
Отправлено: MXM от 07 Мая 2004, 10:07:20
Всем привет!
Ситуация:
Пишу новостную ленту. Всё очень просто. В админке есть форма с тремя полями:
1 - вводишь дату, 2 - краткое описание новости, 3 - полное описание. Далее форму принимает скрипт, обрабатывает её и записывает в простой текстовый файл / запись в файл /.
В чём же проблема:
При добавлении большого количества информации скрипт отказывается принимать данные из формы. Большое количество инфы вписывается во второе и третье поле. Количество введенной информации: 482 символа.
Мои действия:
- Начал уменьшать количество инфы, скрипт принял форму при введенных 390 символов во 2-ом и 390 символов в 3-ем поле.
- Далее проверил сколько, вообще, можно добавить символов (подряд идущих, без пробелов, за пример взял единицы - 1).
Скрипт начал работать при веденных 986 символах в разные поля.
- Затем я посчитал сколько символов, со всеми разделителями и т.д., записал скрипт после введенных "единиц", подсчет составил 2007 символов.
Вопрос:
В чём может быть проблема? Почему такое расхождение: простой текст добавляет при 390 символах, при "сплошных" единицах 986? Кто устанавливает лимит вводимой инфы, количества символов? Как записать в файл большой объем информации?
Заранее спасибо!
Название: запись в текстовый файл большого количества информации
Отправлено: ThE0ReTiC от 07 Мая 2004, 10:32:13
method="GET"  в форме стоит ?
Название: запись в текстовый файл большого количества информации
Отправлено: AliMamed от 07 Мая 2004, 10:40:38
Цитировать
ThE0ReTiC:
method="GET" в форме стоит ?

если не стоит - все равно гет=)

MXM смысл в том, что почти наверняка ты пытаешься передать форму методом GET. а в таком случае следует использовать метод POST.

кроме того, когда пишешь описание проблемы указывай конкретное поведение. "скрипт отказывается" ни о чем не говорит.
Название: запись в текстовый файл большого количества информации
Отправлено: MXM от 07 Мая 2004, 11:01:54
Цитировать
ThE0ReTiC:
method="GET" в форме стоит ?
Не стоит. Он же по умолчанию.
Цитировать
AliMamed:
MXM смысл в том, что почти наверняка ты пытаешься передать форму методом GET. а в таком случае следует использовать метод POST.
Да. Согласен. C POST\'ом всё работает. Но теперь возникает вопрос, почему в этом случае нужно использовать POST?
И почему с GET\'ом всё работает, но с описанными выше причинами?
Цитировать
AliMamed:
..указывай конкретное поведение. "скрипт отказывается" ни о чем не говорит.
Постараюсь исправится.
Название: запись в текстовый файл большого количества информации
Отправлено: ThE0ReTiC от 07 Мая 2004, 11:10:33
Цитировать
MXM:
почему с GET\'ом всё работает, но с описанными выше причинами

Поптому что гетом можно передать не более определенного количества байт (2 Килобайта, если не ошибаюсь)
передавай POST`ом
Название: запись в текстовый файл большого количества информации
Отправлено: MXM от 07 Мая 2004, 11:22:22
Цитировать
ThE0ReTiC:
Поптому что гетом можно передать не более определенного количества байт (2 Килобайта, если не ошибаюсь)
передавай POST`ом
Соглашусь, т.к. как писал я выше:
Цитировать
MXM:
Скрипт начал работать при веденных 986 символах в разные поля.
- Затем я посчитал сколько символов, со всеми разделителями и т.д., записал скрипт после введенных "единиц", подсчет составил 2007 символов.

2007 символов ближе всего к 2 Килобайтам... ;) Значит так оно и есть. Спасибо всем! Думаю, что тему можно закрыть.
Название: запись в текстовый файл большого количества информации
Отправлено: Меняздесьдавнонет от 10 Мая 2004, 11:18:05
Цитировать
MXM:
почему в этом случае нужно использовать POST?

потому, что пост надо использовать всегда, когда форма меняет данные на сайте.

а гет - когда отображает данные

после обработки поста надо всегда делать
header("Location: url");
exit;
Название: запись в текстовый файл большого количества информации
Отправлено: MXM от 10 Мая 2004, 11:42:02
Цитировать
RomikChef:
пост надо использовать всегда, когда форма меняет данные на сайте.

а гет - когда отображает данные
Не много не понял различий? Ведь они оба яв-ся одними из методов передачи данных /пременных/. Мне очень интересно, можешь более подробно рассказть о них? Что для чего? В книгах твоё описание я нигде не встречал.
Название: запись в текстовый файл большого количества информации
Отправлено: Меняздесьдавнонет от 10 Мая 2004, 12:04:30
мне трудно печатать
поэтому ограничимся пока эмпирическим правилом
Название: запись в текстовый файл большого количества информации
Отправлено: MXM от 10 Мая 2004, 12:43:33
Цитировать
RomikChef:
ограничимся пока эмпирическим правилом
Спасибо! Хорошо, пока ограничимся.