Ответов: 13 Просмотров: 595
 |
Добрый день, интересует странный вопрос по поводу записи, я столкнулся с очень странной «проблемой» не работает элементарный код.
PHP:
скопировать код в буфер обмена
<form action="" method="post" > <input name="aa" type="text" value="WORLD" /> <input name="asd" type="submit" value="asd" /> </form> <hr /> <?PHP echo $_POST['aa']; $alfa = 'HELLO'; $file = fopen("test.tpl","w"); if (fwrite($file, $alfa.' '.$_POST['aa'])) { echo "<br />Запись произведена успешно"; } else { echo "<br />Произошла ошибка при записи данных"; } ?>
Форма отправляет текст «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
 |