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
Форумы портала PHP.SU :: Версия для печати :: Запись $POST в файл
Форумы портала PHP.SU » » Вопросы новичков » Запись $POST в файл

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

1. DiosPA - 05 Августа, 2012 - 17:15:12 - перейти к сообщению
Добрый день, интересует странный вопрос по поводу записи, я столкнулся с очень странной «проблемой» не работает элементарный код.

PHP:
скопировать код в буфер обмена
  1. <form action="" method="post" >
  2.         <input name="aa" type="text" value="WORLD" />
  3.         <input name="asd" type="submit" value="asd" />
  4. </form>
  5. <hr />
  6. <?PHP
  7.         echo $_POST['aa'];
  8.         $alfa = 'HELLO';
  9.  
  10.         $file = fopen("test.tpl","w");
  11.         if (fwrite($file, $alfa.'   '.$_POST['aa']))
  12.         {
  13.                 echo "<br />Запись произведена успешно";
  14.         }
  15.         else
  16.         {
  17.                 echo "<br />Произошла ошибка при записи данных";
  18.         }
  19.        
  20.         fclose($file);
  21.         echo '<br />'.file_get_contents('test.tpl');
  22. ?>


Форма отправляет текст «WORLD»
PHP – 1 строка выводит слово world (то есть переменная $_POST['aa']; существует, если сделать var_dump – то будет string…)
Далее файл ‘Test.tpl’ – создаётся, права на чтение и запись в директории есть, всё «ОК» - переменная $alfa записывается получается в файле HELLO но WORLD нету Недовольство, огорчение если заменить $_POST['aa']; на $beta = ‘WORLD’ то данные запишутся нормально.
Побывал также записать с помощью file_put_contents результат тот же…

Но самое интересное в том что происходит далее - echo '<br />'.file_get_contents('test.tpl'); выводит содержимое так как будто в нём есть «HELLO WORLD» открывают блокнотом, Dreamweaver(ом) – только hello…

Помогите найти глюк, я просто не знаю уже что делать и где его искать…

.htaccess – пустой, кодировка файла utf-8 (BOM нету)

PS. Если заменить режим записи $file = fopen("test.tpl","w"); вместо W на a то запись проходит нормально но нужен как раз режим W
Огорчение
2. OrmaJever - 05 Августа, 2012 - 19:05:44 - перейти к сообщению
Помоему это может быть ошибка редактора, у меня этот код полностью рабочий, темболее что ты говрришь file_get_contents('test.tpl') выводит коректно.
3. DiosPA - 05 Августа, 2012 - 19:27:07 - перейти к сообщению
странно всё это блин Недовольство, огорчение
главное с чего оно так...
редактор, открываю в опере (обновить) всё равно hello
вопрос ещё в том что если изменить режим записи $file = fopen("test.tpl","w"); вместо "W" на "a" то запись проходит нормально и редакторы отображают "hello world"
4. OrmaJever - 05 Августа, 2012 - 21:39:37 - перейти к сообщению
Нужно искать проблему в веб сервере или ос, но у меня на win7x64 на php5.3.6 этот код работает нормально.
5. LIME - 06 Августа, 2012 - 05:20:51 - перейти к сообщению
что-то с буферизацией имхо
6. LIME - 06 Августа, 2012 - 08:59:36 - перейти к сообщению
7. DiosPA - 07 Августа, 2012 - 19:20:39 - перейти к сообщению
причина может быть в apace или php?
снёс ОС, но пока тоже самое...
8. LIME - 07 Августа, 2012 - 19:22:01 - перейти к сообщению
ссылку выше смотрел?
9. DiosPA - 07 Августа, 2012 - 19:23:45 - перейти к сообщению
OS - win7x64 php5.2.12+zend
(Добавление)
LIME мне не помогло, только если я не правильно использовал
10. LIME - 07 Августа, 2012 - 19:26:26 - перейти к сообщению
интересно...я таких чудес не наблюдал
11. DiosPA - 07 Августа, 2012 - 19:27:15 - перейти к сообщению
я тоже и вот оно блин, 1 раз за всё время Огорчение
12. LIME - 07 Августа, 2012 - 19:27:32 - перейти к сообщению
попробуй скрипт на другой системе...не своей...халявный хостинг попробуй
13. DiosPA - 07 Августа, 2012 - 19:31:31 - перейти к сообщению
щас попробую, поковырять ещё php.ini (может там что есть... хотя навряд ли) и на php.net глянуть может глюк какой (:
14. DiosPA - 08 Августа, 2012 - 10:34:47 - перейти к сообщению
Проблема была в где то в ОС и программное обеспечение драйвера (точно не знаю какой).
Установил другой образ 7 и установил драйвера (только inf файлы) ошибки не возникло, скрипт работает нормально - причина возникновения так и осталось не понятна Огорчение

теперь надо наверстать работу.... Ниндзя

спасибо за советы.

PS. текущий образ ос ставил 2 раза 1 раз скрипт всё "ок" установил дрова как положено (с софтом) рестарт - скрипт не работает... (вот так вот блин Не понял )

 

Powered by ExBB FM 1.0 RC1