[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Отображение и вывод файла с каталога с помощью dir
kolyabis
Доброго дня всем, прошу совета или помощи.
Есть скрипт, вот он.

<table width=100% height=100%>
<
p>Файлы в папке </p>
<? $dir = opendir ("../media_img/");
while (false !== ($file = readdir($dir)))
if(($file !=".") && ($file !="..")){
echo "<tr><td width=25% height=5% align='center'>";
echo "<a href=$dir/$file target=_blank>$file</a>";
echo "</td></tr>";
}
closedir($dir); ?>
</table>


Данный скрипт выводит мне все файлы которые находятся в каталоге и выводит их как ссылку, это впринципе так как мне надо, но есть один маленький ньюанс, который мне нужно реализовать. Надо чтоб при клике на ссылку например в отдельном окне открывалась эта картинка ну и в браузере выводилась ссылка, тойсть путь к данной картинке.
Вместо этого мне выводится вот такой путь. ( http://svoy/administrator/Resource ) то есть ошибка. Подскажите, как подредактировать чтоб мне открывалась моя картинка с путем.



Спустя 17 минут, 57 секунд (1.03.2011 - 10:58) Evilsoul написал(а):
ошибка
echo "<a href=$dir/$file target=_blank>$file</a>";

так:
echo "<a href=".$dir."/".$file." target=_blank>".$file."</a>";

Спустя 7 минут, 15 секунд (1.03.2011 - 11:05) kolyabis написал(а):
В таком варианете получается тоже самое
echo "<a href=".$dir."/".$file." target=_blank>".$file."</a>";

Спустя 14 минут, 46 секунд (1.03.2011 - 11:20) Evilsoul написал(а):
лучше сделать так:

$dir = $_SERVER['DOCUMENT_ROOT'].'дериктория';
$files = scandir($dir); // получим массив файлов

while(!empty($files))
{
// здесь вывод
}

Спустя 4 минуты, 50 секунд (1.03.2011 - 11:25) Evilsoul написал(а):
даже лучше через for

for($i = 2; $i < count($files); $i++)
{
$files[$i] // содержит имя файла начиная со второго индекса
}

Спустя 18 минут, 16 секунд (1.03.2011 - 11:43) kolyabis написал(а):
Функция ( scandir ) сразу выдает ошибку.

Спустя 7 минут, 54 секунды (1.03.2011 - 11:51) kolyabis написал(а):
Вот так
$dir = $_SERVER['DOCUMENT_ROOT'].'дериктория';
$files = scandir($dir); // получим массив файлов

while(!empty($files))
{
// здесь вывод
}


И

for($i = 2; $i < count($files); $i++)
{
$files[$i] // содержит имя файла начиная со второго индекса
}


Результатов не дало, либо вывод остается прежним, либо просто выводит ошибку.

Спустя 6 минут, 18 секунд (1.03.2011 - 11:57) kolyabis написал(а):
Вот, проблема решена. Так работает как надо, выводит картинку в отдельном окне, вместе с путем к каталогу где она находится.
<? 
$url = 'http://svoy/media_img/';
$path = '../media_img/';

$dir = opendir ($path);
while (false !== ($file = readdir($dir)))
if(($file !=".") && ($file !="..")){
echo "<tr><td width=25% height=5% align='center'>";
echo "<a href=".$url.$file." target=_blank>$file</a>";
echo "</td></tr>";
}
closedir($dir);

?>

Спустя 5 минут, 44 секунды (1.03.2011 - 12:03) Evilsoul написал(а):
Цитата
Функция ( scandir ) сразу выдает ошибку.

У тебя какая версия ПШП ?

Спустя 1 час, 54 минуты, 3 секунды (1.03.2011 - 13:57) kolyabis написал(а):
У меня PHP Version 5.2.4
Быстрый ответ:

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