Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сохранение в файл

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
retter
Отправлено: 22 Сентября, 2011 - 16:29:23
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Здравствуйте! Написал скрипт сохранение текста из формы в файл, но возникла такая проблема: при каждом обновлении страницы обновляется и файл, пробовал использовать функции isset() и unset(), но почему-то не получилось, подскажите что можно с этим сделать?
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. $text = $_POST['text'];
  3. if (isset($text))
  4. {
  5.         $templates = fopen('/templates/file.php','w+');
  6.         fwrite($templates, $text);
  7.         unset($text);
  8. }
  9. ?>
  10. <form action="file2.php" method="POST">
  11. <p align="center"><textarea class="formstyle" name="text" rows="30" cols="130"><?php include("/templates/file.php"); ?></textarea></p>
  12. <p align="center"><input class="formstyle" type="submit" value="Сохранить" /></p>
  13. </form>

(Отредактировано автором: 22 Сентября, 2011 - 16:53:46)

 
 Top
caballero
Отправлено: 22 Сентября, 2011 - 16:38:21
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




isset($_POST['text']) будет всегда

проверяй
strlen($_POST['text']) >0


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Мелкий Супермодератор
Отправлено: 22 Сентября, 2011 - 16:45:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




caballero пишет:
isset($_POST['text']) будет всегда

С какого перепугу?

retter пишет:
при каждом обновлении страницы обновляется и файл

Обновление через f5 и подобное? В этом случае браузеры высылают форму повторно. Одни - переспрашивают, другие - нет. Для обхода этого поведения, после получения формы делайте редирект на эту же страницу.


-----
PostgreSQL DBA
 
 Top
retter
Отправлено: 22 Сентября, 2011 - 16:59:40
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Мелкий пишет:
Обновление через f5 и подобное? В этом случае браузеры высылают форму повторно. Одни - переспрашивают, другие - нет. Для обхода этого поведения, после получения формы делайте редирект на эту же страницу.

Об редиректе не подумал, получилось, спасибо!
 
 Top
caballero
Отправлено: 22 Сентября, 2011 - 17:04:13
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




Цитата:
С какого перепугу?

потому что поле никуда не делось
это только чекер отсутствует в POST если не установлен


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Мелкий Супермодератор
Отправлено: 22 Сентября, 2011 - 17:30:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




caballero пишет:
потому что поле никуда не делось

При открытии формы в первый раз - POST пуст вообще. Т.к. обращение было GET.

caballero пишет:
это только чекер отсутствует в POST если не установлен

А так же, может отсутствовать кнопка.


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с файловой системой и файлами »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB