Всем привет.
Вот такая проблема. Некоторый файл загружается в textarea, а потом формой в неизменном виде отсылается назад на сервер и там сохраняется. Сравниваю что было и что стало diff-ом. Говорит, что каждая строчка отличается. Как загрузить его обратно на сервер в неизменном виде.
Зараннее спасибо.<?
$file="file.txt";
if ($_POST['save']=='1') {
$handle=fopen($file,'w');
$data=fwrite($handle,$_POST['data']);
fclose($handle);
}
$handle=fopen($file,'r');
$data=fread($handle,filesize($file));
fclose($handle);
?>
<html><body><form action=<? echo $_SERVER['PHP_SELF']; ?> method=POST><textarea name=data><? echo $data; ?></textarea><input type=hidden name=save value=1><br><input type=s
ubmit value=Ok></form></body></html>
Отличается чем? Результат сравнения в студию, если можно. Кстати, почему нет блокировки на файл? Туда можно будет записать одновременно, и получится каша.
>Отличается чем? Результат сравнения в студию, если можно. Кстати, почему нет блокировки
>на файл? Туда можно будет записать одновременно, и получится каша.Коверкает каждую строчку. Видимо, какой-то непечатный символ. Но как это побороть - понятия не имею.
root@dima-laptop# diff file.txt file2.txt
1,4c1,4
< 1234
< qwer
< asdf
< zxcv
---
> 1234
> qwer
> asdf
> zxcvfile2.txt - это file.txt, до того, как его модифицировал вышеприведенный скрипт
>root@dima-laptop# diff file.txt file2.txt
>1,4c1,4
>< 1234
>< qwer
>< asdf
>< zxcv
>---
>> 1234
>> qwer
>> asdf
>> zxcv
>
>file2.txt - это file.txt, до того, как его модифицировал вышеприведенный скриптпосмотри на файлики в hex-редакторе. есть у меня предположение что в одном из них используется \n\r в качестве символа новой строки, а в другом, согласно UnixWay, -- просто \n.