Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не получатеся использовать функции управления файлами!
 
 автор: Riddik269   (16.05.2009 в 08:20)   письмо автору
 
 

Здравствуйте!
У меня возникает проблема с управленем файлами через 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);


Если вам не трудно, то попробуйте протестировать на своём сервере вышенаписанные коды.

  Ответить  
 
 автор: Valick   (16.05.2009 в 09:03)   письмо автору
 
   для: Riddik269   (16.05.2009 в 08:20)
 

попробуйте использовать абсолютный путь к файлу

  Ответить  
 
 автор: sim5   (16.05.2009 в 09:04)   письмо автору
 
   для: Riddik269   (16.05.2009 в 08:20)
 

А под какой системой вы запускаете Денвера?

  Ответить  
 
 автор: Valick   (16.05.2009 в 09:07)   письмо автору
 
   для: sim5   (16.05.2009 в 09:04)
 

Денвер существует только для Виндовз ;)

  Ответить  
 
 автор: sim5   (16.05.2009 в 09:20)   письмо автору
 
   для: Valick   (16.05.2009 в 09:07)
 

Денвер можно с успехом запустить и на Висте, а там картина с доступом иная.

  Ответить  
 
 автор: Valick   (16.05.2009 в 10:16)   письмо автору
 
   для: sim5   (16.05.2009 в 09:20)
 

хм... не обращал внимания... у меня всё работало, правда врать не буду у меня на localhost все скрипты лежат

  Ответить  
 
 автор: sim5   (16.05.2009 в 10:27)   письмо автору
 
   для: Valick   (16.05.2009 в 10:16)
 

Ну бог его знает, может у товарища действительно Виста, и он запихнул все хозяйство туда, где нет полных прав. Если "секретный путь", который он тут нам показывает, один и тот же во всех операциях, то значит проблем с путями нет. Если же проблемы с ними, то значит косяки в настройках Денвера, либо попытка создать хосты виртуальные бог знает где, и бог знает как.

  Ответить  
 
 автор: Trianon   (16.05.2009 в 10:43)   письмо автору
 
   для: sim5   (16.05.2009 в 10:27)
 

Какеой нафиг секретный путь, когда у него имя с http:// начинается?

  Ответить  
 
 автор: sim5   (16.05.2009 в 10:47)   письмо автору
 
   для: Trianon   (16.05.2009 в 10:43)
 

Ну да... )

  Ответить  
 
 автор: Riddik269   (16.05.2009 в 13:34)   письмо автору
 
   для: Riddik269   (16.05.2009 в 08:20)
 

У меня Win Vista x64, путь одинаковый и корректный на 100%.
Как я уже писал выше я пробовал на платном хостинге (axer), там UNIX и права на фаил myfile.txt я выставил 777.

  Ответить  
 
 автор: Trianon   (16.05.2009 в 15:43)   письмо автору
 
   для: Riddik269   (16.05.2009 в 13:34)
 

Вы можете менять пачками операционные сисетемы сервера и хостинги.
Но нигде корректное имя файла с http:// начинаться не будет.

  Ответить  
 
 автор: Riddik269   (16.05.2009 в 16:00)   письмо автору
 
   для: Trianon   (16.05.2009 в 15:43)
 

А каким тогда образом я могу открыть фаил ? Какой адрес указывать?

  Ответить  
 
 автор: Riddik269   (16.05.2009 в 16:06)   письмо автору
 
   для: 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

  Ответить  
 
 автор: Valick   (16.05.2009 в 16:43)   письмо автору
 
   для: Riddik269   (16.05.2009 в 16:06)
 

а откуда им взяться ошибкам-то? если Вы их собаками задавили
@ - забудте про этот оператор на время разработки и отладки скрипта

  Ответить  
 
 автор: Riddik269   (16.05.2009 в 17:50)   письмо автору
 
   для: Valick   (16.05.2009 в 16:43)
 

Убрал собак, ничего не выходит.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования