[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Чтение файла с сервера
ak167
Написал скрипт загрузки текстовых файлов на сервер + чтение их. Загрузка работает нормально при этом генерируется имя файла с расширением txt, он записывается в нужную папку а вот чтение файла не работает.
Помогите разобраться в чем дело.

Вот кусок скрипта, отвечающий за чтение:

// Название папки
$catalog="mytext";

$i=1;
$dir=opendir($catalog);
while($file=readdir($dir))
{
if(is_file($catalog."/".$file))
{
echo "<h2>";
$text=readfile($file);
echo $text;
echo "</h2><br>";
$i++;
}
}

closedir($dir);







Спустя 1 день, 35 минут, 16 секунд (21.12.2009 - 20:47) ak167 написал(а):
Аууу... неужели никто не знает как прочесть текстовый файл с сервера?)))

Спустя 10 минут, 1 секунда (21.12.2009 - 20:57) VolCh написал(а):
А что значит "не работает"? Выдаёт ошибку, выдаёт что-то не то, вообще ничего не выдаёт?

Спустя 32 минуты, 24 секунды (21.12.2009 - 21:29) twin написал(а):
А заголовки где?

Спустя 58 минут, 2 секунды (21.12.2009 - 22:27) ak167 написал(а):
пишет вот что:

Warning: readfile(4b2e5927a2c46.txt) [function.readfile]: failed to open stream: No such file or directory in /home/www/htdocs/site.ru/php/file2-5.php on line 45


Весь скрипт целиком:

<?php
// ЗАГРУЗКА ТЕКСТОВ НА СЕРВЕР

// Название папки

$catalog="mytext";


// скрипт удаления файлов
if($_GET['sent'])
{
$delname=urldecode($_GET['del']);
$pfad=$catalog."/".$delname;
@unlink($pfad);
}


// скрипт сохранения файлов
if($_POST['sent'])
{

if(!file_exists($catalog)){mkdir($catalog, 0755);}

if($_FILES['myfile']['size']>100000){$error="<br>Файл слишком велик!";}
if(!$_FILES['myfile']['type']=='text/plain'){$error.="<br>Файл имеет неразрешенный тип!";}

if(!$error)
{
$name=uniqid("");
$name=$catalog."/".$name.".txt";

copy($_FILES['myfile']['tmp_name'], $name);
}
else{echo $error;}

}

// создадим ссылки на файлы в каталоге

$i=1;
$dir=opendir($catalog);
while($file=readdir($dir))
{
if(is_file($catalog."/".$file))
{
echo "<h2>";
$text=readfile($file);
echo $text;
echo "</h2>";
$file=urlencode($file);
echo '<a href="'.$_SERVER['PHP_SELF'].'?sent=1&del='.$file.'">Удалить_'.$i.'</a><br>';
echo "<br>";
$i++;
}
}

closedir($dir);

?>

<html>
<
head>
<
title>Загрузки файлов на сайт</title>
</
head>
<
body>
<
form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<
input type="hidden" name="sent" value="1">
<
p>Выберите файл</p>
<
input type="file" name="myfile"><br>
<
input type="submit" value="Закачать"><input type="reset" value="сброс">
</
form>
</
body>
</
html>

Спустя 5 минут, 37 секунд (21.12.2009 - 22:33) Romms написал(а):
как я понял, ругается на это:
  $text=readfile($file);

но так сказать, не ймеют люди пользоваться переводчиками...
перевод
Надеюсь ты понял вчём ошибка...

Спустя 1 час, 45 минут, 32 секунды (22.12.2009 - 00:18) vagrand написал(а):
Разу уж ты проверяеш является ли файлом путь $catalog."/".$file то и читать тоже нужно путь, а не файл. Т.к. файл то не находиться в твоем рабочем каталоге.

Спустя 1 день, 22 часа, 45 минут, 10 секунд (23.12.2009 - 23:04) ak167 написал(а):
Romms, vagrand, ааа... блииин))) Как же я сам не догадался!
Спасибо! Теперь все работает! biggrin.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.