Почему fwrite не переносит переменные?

Всем привет =)

Столкнулся с такой проблемой . Дописал наконец то свой первый сайт на PHP , но вот проблем ка . Осталось добавить лишь последний штрих , а именно создание файла в папке аккаунта название папки берется от md5("login") это все срабатывает да и скрипт сам срабатывает . Только вот в записанных файлах не выводит переменные .

Вот скрипт записи
mkdir("log/$login_dir", 0700);
	$img = fopen ("log/$login_dir/img.php","w+");
	fwrite($img, "<?


$open_file= fopen (\"/log/$login_dir\/\" ,\"a+\");
$ip = fwrite ($open_file,'$_SERVER\[\"REMOTE_ADDR\"\]'.\";\");
$time = fwrite ($open_file,date(\"H:i:s\").\";\");
foreach ($_GET as $key=>$value){
	fwrite ($open_file,\"$key$value\");
}
fwrite ($open_file,\";\");
fclose($open_file);
?>");
fclose ($img);


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

<?


''= fopen ("/log/'2995e1cc5522f9ebab35784327ae8fd4\/" ,"a+");
'' = fwrite ('','Array\["REMOTE_ADDR"\]'.";");
'' = fwrite ('',date("H:i:s").";");
foreach ('Array' as '=>'){
	fwrite ('',"''''");
}
fwrite ('',";");
fclose('');
?>


Как видите не указывает переменные , в чем тут дело ? Никак не могу разобраться .Может кто сталкивался?
  • Вопрос задан
  • 160 просмотров
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
fwrite бинарно-безопасен и записывает ровно то, что ему сказали писать.
Следовательно, вы именно так и записываете.

Почему так себя ведёт конкретный ваш скрипт, описано в синтаксисе объявления строк: www.php.net/manual/ru/language.types.string.php

И, разумеется, включите error_reporting в E_ALL в php.ini, а так же display_errors = On и display_startup_errors = On. Сейчас вы не видите крайне полезные сообщения самого языка.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы