|
|
|
| Здравствуйте!
У меня возникает проблема с управленем файлами через PHP!
Помогите пожалуйста разобраться!
Списываю 1 в 1 из книжки код удаления файла:
$filename = "http://путь/myfile.txt";
$status = unlink($filename) or exit("Невозможно удалить файл");
echo "файл удален успешно";
|
На денвере выходит ошибка: rning: unlink() [function.unlink]: http does not allow unlinking in W:\путь\fileread.php on line 4 и Невозможно удалить файл
а на платном хостинге (axer) просто Невозможно удалить файл
Так же не получается просто прочесть фаил. Код:
$filename = "http://путь/myfile.txt";
$newfile = @fopen($filename, "r") or exit("Невозможно открыть файл!");
$file_contents = @fread($newfile, filesize($filename))
or exit("Невозможно прочитать содержимое файла!");
fclose($newfile);
|
В этом случае выходит ошибка Невозможно прочитать содержимое файла!
В общем то из всех подобных операций работает только fgetcsv
$filename = "http://путь/numbers.txt";
$newfile = @fopen($filename, "r") or exit("Could not open file");
$file_contents = @fgetcsv($newfile, filesize($filename),",")
or exit("Could not read file contents");
for ($i=0; $i < sizeof($file_contents); $i++)
{
echo $file_contents[$i];
echo "<br/>";
}
fclose($newfile);
|
Если вам не трудно, то попробуйте протестировать на своём сервере вышенаписанные коды. | |
|
|
|
|
|
|
|
для: Riddik269
(16.05.2009 в 08:20)
| | попробуйте использовать абсолютный путь к файлу | |
|
|
|
|
|
|
|
для: Riddik269
(16.05.2009 в 08:20)
| | А под какой системой вы запускаете Денвера? | |
|
|
|
|
|
|
|
для: sim5
(16.05.2009 в 09:04)
| | Денвер существует только для Виндовз ;) | |
|
|
|
|
|
|
|
для: Valick
(16.05.2009 в 09:07)
| | Денвер можно с успехом запустить и на Висте, а там картина с доступом иная. | |
|
|
|
|
|
|
|
для: sim5
(16.05.2009 в 09:20)
| | хм... не обращал внимания... у меня всё работало, правда врать не буду у меня на localhost все скрипты лежат | |
|
|
|
|
|
|
|
для: Valick
(16.05.2009 в 10:16)
| | Ну бог его знает, может у товарища действительно Виста, и он запихнул все хозяйство туда, где нет полных прав. Если "секретный путь", который он тут нам показывает, один и тот же во всех операциях, то значит проблем с путями нет. Если же проблемы с ними, то значит косяки в настройках Денвера, либо попытка создать хосты виртуальные бог знает где, и бог знает как. | |
|
|
|
|
|
|
|
для: sim5
(16.05.2009 в 10:27)
| | Какеой нафиг секретный путь, когда у него имя с http:// начинается? | |
|
|
|
|
|
|
|
для: Trianon
(16.05.2009 в 10:43)
| | Ну да... ) | |
|
|
|
|
|
|
|
для: Riddik269
(16.05.2009 в 08:20)
| | У меня Win Vista x64, путь одинаковый и корректный на 100%.
Как я уже писал выше я пробовал на платном хостинге (axer), там UNIX и права на фаил myfile.txt я выставил 777. | |
|
|
|
|
|
|
|
для: Riddik269
(16.05.2009 в 13:34)
| | Вы можете менять пачками операционные сисетемы сервера и хостинги.
Но нигде корректное имя файла с http:// начинаться не будет. | |
|
|
|
|
|
|
|
для: Trianon
(16.05.2009 в 15:43)
| | А каким тогда образом я могу открыть фаил ? Какой адрес указывать? | |
|
|
|
|
|
|
|
для: Trianon
(16.05.2009 в 15:43)
| | Попробовал кинуть фаил в корень и удалил путь оставив только название и расширение файла
$filename = "name.txt";
$newfile = @fopen($filename, "r") or exit("Невозможно открыть файл!");
$file_contents = @fread($newfile, filesize($filename))
or exit("Невозможно прочитать содержимое файла!");
fclose($newfile);
|
В итоге нету ни ошибки, ни содержимого файла name.txt | |
|
|
|
|
|
|
|
для: Riddik269
(16.05.2009 в 16:06)
| | а откуда им взяться ошибкам-то? если Вы их собаками задавили
@ - забудте про этот оператор на время разработки и отладки скрипта | |
|
|
|
|
|
|
|
для: Valick
(16.05.2009 в 16:43)
| | Убрал собак, ничего не выходит. | |
|
|
|