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

Форум PHP

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

 

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

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

тема: Работа с файлами и вывод ссылок в определённое место
 
 автор: qwelp   (23.11.2005 в 16:36)   письмо автору
 
 

Всем! Привет! Я почитал форум и понял что тут много знающих людей которые всем помогают, а у меня как раз проблема возникла. может кто поможет её решить и так проблема:
Мне нужно чтобы я используя вебформу закачивал фаил на фтп сервер и на фаил каторый я закачал создавалась ссылка , которую можно выводить на указыное место в странице и скачивать этот фаил уже непосредственно с страницы. Пример я закачал *.mp3 и на главной странице в определённом месте появилась ссылка и любой человек попав на сайт способен скачать этот фаил.

   
 
 автор: DDK   (23.11.2005 в 20:21)   письмо автору
 
   для: qwelp   (23.11.2005 в 16:36)
 

Так... давайте сперва расставим точки над Ы. Вы не сказали, в каком виде у вас на сайте храняться эти ссылки... Могу предложить вариант - создать на сервера текстовый файл, в который на каждую строку будет записываться ссылка на тот или иной файл. Потом с нужной страницы просто инклудим этот файл. А скрипт закачки можете найти в поиске по слову "upload".

   
 
 автор: cheops   (24.11.2005 в 00:55)   письмо автору
 
   для: qwelp   (23.11.2005 в 16:36)
 

Скрип upload-а файла на сервер можно найти по ссылке, скрипт вывода списка файлов в директории можно посмотреть в теме по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=4792

   
 
 автор: qwelp   (24.11.2005 в 10:22)   письмо автору
 
   для: cheops   (24.11.2005 в 00:55)
 

После того, как получен HTTP-запрос, содержимое загруженного файла записывается во временный файл, который создается в каталоге сервера, заданном по умолчанию для временных файлов, если другой каталог не задан в файле php.ini (директива upload_tmp_dir).

Мне надо создать временный фаил и присвоить ему права? просто я не создавал временный файл и файле php.ini

   
 
 автор: qwelp   (24.11.2005 в 12:10)   письмо автору
 
   для: qwelp   (24.11.2005 в 10:22)
 

Что надо добавить чтобы скрипт создавал ссылки в текстовом виде в *.txt файл?

<?php
if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"upload/".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
} else {
echo("Ошибка загрузки файла");
}
?>

   
 
 автор: qwelp   (24.11.2005 в 12:39)   письмо автору
 
   для: qwelp   (24.11.2005 в 12:10)
 

Я разобрался кому интересно вот код.
<?php
// Открываем директорию
$handle=opendir("upload/");
while ($file = readdir($handle))
{
if($file=="."||$file=="..") continue;
echo "<a href\"$file\">$file</a><br>";
}
closedir($handle);
// В цикле считываем её содержимое
while(($file = readdir($dir)) !== false)
{
// Если текущий объект является файлом -
// помещаем его во временный массив
if(is_file($file)) $arr[] = $file;
}
// Закрываем директорию
closedir($dir);
// Сортируем временный массив
sort($arr);
// Выводим файлы
foreach($arr as $filename)
{
echo $filename."<br>";
}
?>

   
 
 автор: qwelp   (24.11.2005 в 12:42)   письмо автору
 
   для: qwelp   (24.11.2005 в 12:39)
 

Только у меня 1 вопрос остался как скрыт расширение файла при выводе?

   
 
 автор: qwelp   (24.11.2005 в 13:32)   письмо автору
 
   для: qwelp   (24.11.2005 в 12:42)
 

И ещё 1 вопрос созрел по этой теме:) как зделать так чтобы не просто название файла выводило а выводилось ввиде ссылки.
Заранее спасибо.

   
 
 автор: cheops   (24.11.2005 в 13:38)   письмо автору
 
   для: qwelp   (24.11.2005 в 12:42)
 

Отрежте просто последние 4 символа при помощи функции substr()
<?php
  
echo substr($filename0strlen($filename) - 4);
?>

   
 
 автор: qwelp   (24.11.2005 в 16:35)   письмо автору
 
   для: cheops   (24.11.2005 в 13:38)
 

в какое именно место надо это вписать что то у меня не как не получается?

   
 
 автор: cheops   (25.11.2005 в 00:07)   письмо автору
 
   для: qwelp   (24.11.2005 в 16:35)
 

В цикле foreach
<?php
foreach($arr as $filename

echo 
$filename."<br>"
}
?>

   
 
 автор: qwelp   (25.11.2005 в 09:09)   письмо автору
 
   для: cheops   (25.11.2005 в 00:07)
 

Посматри где ошибка у меня всё равно выводит последнии 4 символа

<?php 
  
// Открываем директорию 
  
$handle=opendir("upload/"); 
while (
$file readdir($handle)) 

       if(
$file=="."||$file=="..") continue; 
       echo 
"<a href\"$file\">$file</a><br>";
        

closedir($handle);

  
// В цикле считываем её содержимое 
  
while(($file readdir($dir)) !== false
  { 
    
// Если текущий объект является файлом - 
    // помещаем его во временный массив 
    
if(is_file($file)) $arr[] = $file
  } 
  
// Закрываем директорию 
  
closedir($dir); 
  
// Сортируем временный массив 
  
sort($arr); 
  
// Выводим файлы 
  
foreach($arr as $filename
   { 
  echo 
substr($filename0strlen($filename) - 4);
    echo 
$filename."<br>";    
  } 
?>

   
 
 автор: cheops   (25.11.2005 в 13:49)   письмо автору
 
   для: qwelp   (25.11.2005 в 09:09)
 

Имеется ввиду вот что
<?php 
  
// Открываем директорию 
  
$handle=opendir("upload/"); 
while (
$file readdir($handle)) 

       if(
$file=="."||$file=="..") continue; 
       echo 
"<a href\"$file\">$file</a><br>"
         

closedir($handle); 

  
// В цикле считываем её содержимое 
  
while(($file readdir($dir)) !== false
  { 
    
// Если текущий объект является файлом - 
    // помещаем его во временный массив 
    
if(is_file($file)) $arr[] = $file
  } 
  
// Закрываем директорию 
  
closedir($dir); 
  
// Сортируем временный массив 
  
sort($arr); 
  
// Выводим файлы 
  
foreach($arr as $filename
   { 
    echo 
substr($filename0strlen($filename) - 4)."<br>";     
  } 
?>

   
Rambler's Top100
вверх

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