Подскажите, как можно узнать, существует ли определённый файл в виртуальном каталоге, или нет? Ведь как я понял функция file_exists() не видит виртуальные каталоги В ASP есть Server.MapPath() котрорая возвращает полный путь каталога, есть ли что то подобное в PHP?
Виндовое, а что, у вас с этим проблема? :wink: Хорошо, пусть это будет не виртуальный каталог как в IIS, а alias, как в Apache 8)
ViT если физиеский путь не известен можно попробовать получить файл по http. тут извратов много. а какая задача-то стоит на самом деле? file_exists() имеет дело с файловой системой, а "виртуальные каталоги" и "алиасы" - это дело вебсервера.
А.... я ж просто не понял о чем спросили =) Можно некоторую информацию получить из переменных окружения. Кое что apache туда отдает. Для того что бы найти что нибудь полезненькое я обычно делаю так Код (Text): <? phpinfo(); ?>
Да задача то банальная, надо показать картинку (ну и вывести некоторые данные), если она есть в каталоге :?
ViT так а каталог-то как хранится? может все прямо там и хранить? я вот все-таки не пойму при чем тут "алиасы"?
Короче... Сайт с mp3. Есть много алиасов (допустим "music1", "music2" и т.д.) по которым распаложены сами mp3, физически на разных дисках. Вот мне надо узнать, есть ли файл по пути "http://localhost/music1/.../cover.jpg", если есть, то показать его. file_exists() не видит папку "music1" т.к. это алиас
Всем привет. Хотелось бы вернуться к данной теме, т.к. есть очень похожая задача. Может кто-то нашел решение или за прошедшие 4 года что-нить изменилось и теперь PHP тоже умеет это делать? Как вариант, может быть можно как-то из PHP обратиться к функции, написанной на JScript, которая возвращает абсолютный путь к виртуальной папке с помощью Server.MapPath()? P.S. Вариант с dirname() не проходит.
К сожалению использование realpath не помогает. Поясню на примере. К примеру, на Web-сервере есть виртуальный каталог vcat/, который виден как http://sait.ru/vcat. Выполнение в коде Код (Text): realpath("vcat/") дает результат Код (Text): "." , хотя на самом деле этот локальный каталог имеет физический путь типа D:\catalog1\catalog2[/b]
Не получится, т.к. скрипт не находится в указанном виртуальном каталоге. Виртуальный каталог используется для хранения файлов, с которыми происходит работа.
Спасибо за ссылку на подробное объяснение различий между абсолютными и относительными путями. Извините, не понял Вашу мысль. Я, конечно, не гуру, но такие базовые вещи вроде понимаю. Может Вам тоже стоит еще раз перечитать данный материал, освежить так сказать в памяти, а заодно и тему, обсуждаемую в данном посте? Если Вы знаете как решить обозначенную проблему или у Вас есть конкретные идеи - с удовольствием готов выслушать и обсудить здесь на форуме, а ссылки на подобные материалы в данной ситуации не помогут.
Ну если Вы сможете обосновать необходимость этого для меня, то несомненно освежу. Пока Вы меня абсолютно не вдохновляете Печально если это так. В таком случае, видимо, вам нужен другой раздел - не этот. А ведь все просто как 2+2 и гуру тут быть не надо (я вот не гуру, а разобрался) это URL. это внутренняя настройка сервера это реальный путь. То что связь между первым и последним имеется в настройках сервера и доступ к нему возможен через его API(если оно есть) это понятно? Так что имеется масса вариантов: 1. Соответственно выбираем текущий наш сервер и курим мануал PHP на предмет наличия соответствующего API, для двух самых распространенных серверов там кое-что есть, правда разной степени свежести. Но если Вас не затрудняет раздавать советы, как именно вам должны отвечать, то как это использовать - разберетесь самостоятельно. 2. Ну, а вопрос запуска JScript из PHP, я полагаю Вас тоже не затруднит, ибо вещь крайне тривиальная. Правда описывается это в ссылках, которые Вам почему-то не помогут Это конечно досадно. Но я не знаю чем я могу помочь в такой ситуации.
Тогда может вместо ссылок на описание различий между абсолютными и относительными путями подскажете КАК ИМЕННО ЭТО СДЕЛАТЬ, если это так просто на Ваш взгляд? В мануалах и на форумах я почему-то этого не нашел...
Послушайте уважаемый! Не стоит думать, что вокруг Вас все сплошные идиоты, не умеющие пользоваться поиском. Короче говоря, если знаете как решить проблему, - напишите. Если нет, тогда и нечего тратить свое драгоценное время на постирование ссылок на мануалы и цитирование описание проблемы. Или Вам просто пообщаться не с кем? Кажется я понял, Вы, наверное, таким образом накручиваете свой счетчик кол-ва сообщений на форуме?
Вас? Увольте. Вам нечего сказать по делу. Вы можете только щеки надувать. Да как же мне об этом не думать, если это в Вашем случае 100% факт, причем подтвержденный Вами же: Выше это Ваши слова? Код (Text): exec/wscript/shell.js Детский сад - сопливая группа. Причем в 7м IIS, если я правильно помню, это можно сделать без последних двух вещей Эх.... бездари и неучи... Проблема! Решить! Жесть.