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

Форум PHP

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

 

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

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

тема: opendir
 
 автор: cherrypashka   (11.01.2015 в 14:37)   письмо автору
 
 

Здравствуйте! Я работаю в Денвере. Если пытаюсь открыть директорию при помощи opendir вот так
http://localhost/photographer/wp-content/themes/shaken-grid/images/photo/1
то Денвер не видит директорию..
Если вот так
Z://home/localhost/www/photographer/wp-content/themes/shaken-grid/images/photo/1
то Денвер видит директорию..
Я понял, что opendir не работает на удалённых серверах, но у меня же локальный?.. или я что-то не понимаю???
Подскажите. пожалуйста!

  Ответить  
 
 автор: lightning.say   (11.01.2015 в 14:56)   письмо автору
 
   для: cherrypashka   (11.01.2015 в 14:37)
 

так в первом случае не директория а URL
можно попробовать через fopen

  Ответить  
 
 автор: Trianon   (11.01.2015 в 15:10)   письмо автору
 
   для: cherrypashka   (11.01.2015 в 14:37)
 

opendir работает c каталогами.
А вы пытаетесь подсунуть ему URL - локатор http-потока данных.
То, что этот локатор уводит на собственный сервер, в данном случае вторично.
Сервер от этого менее удаленным или менее сервером не станет.

  Ответить  
 
 автор: cherrypashka   (12.01.2015 в 03:53)   письмо автору
 
   для: Trianon   (11.01.2015 в 15:10)
 

Спасибо большое, разобрался.. ну вот вопрос, а в Денвере не работают короткие адреса (не полные)?

  Ответить  
 
 автор: confirm   (12.01.2015 в 10:34)   письмо автору
 
   для: cherrypashka   (12.01.2015 в 03:53)
 

Это какие короткие адреса? Нет такого понятия, есть абсолютный, есть относительный адрес. И переходите с Денвер на OpenServer.

  Ответить  
 
 автор: Trianon   (12.01.2015 в 13:42)   письмо автору
 
   для: confirm   (12.01.2015 в 10:34)
 

это что за адрес-то такой - относительный?
3-я улица Строителей, д.25, кв.12 ?

  Ответить  
 
 автор: confirm   (12.01.2015 в 13:53)   письмо автору
 
   для: Trianon   (12.01.2015 в 13:42)
 

а кто вам сказал, что я об адресе по улице..?

  Ответить  
 
 автор: Trianon   (12.01.2015 в 14:08)   письмо автору
 
   для: confirm   (12.01.2015 в 13:53)
 

просто это единственный адрес, который я смог вспомнить, и на который хотть как-то можно натянуть эпитет относительный.

Ваш пример?

  Ответить  
 
 автор: confirm   (12.01.2015 в 14:28)   письмо автору
 
   для: Trianon   (12.01.2015 в 14:08)
 

Чего, пути относительного или тети Мони с Арбата?

  Ответить  
 
 автор: Trianon   (12.01.2015 в 14:53)   письмо автору
 
   для: confirm   (12.01.2015 в 14:28)
 

путь относительный бывает.
Адрес - нет.

  Ответить  
 
 автор: confirm   (12.01.2015 в 15:32)   письмо автору
 
   для: Trianon   (12.01.2015 в 14:53)
 

Значит надо было просто указать мне, что оговорился, а не о адресе Мони.

  Ответить  
 
 автор: Trianon   (12.01.2015 в 15:49)   письмо автору
 
   для: confirm   (12.01.2015 в 15:32)
 

это не Мони адрес, а Нади Шевелевой. В Ленинградском адресном пространстве.
В Московском - Жени Лукашина.
Про Моню мне ничего неизвестно.

  Ответить  
 
 автор: confirm   (12.01.2015 в 15:53)   письмо автору
 
   для: Trianon   (12.01.2015 в 15:49)
 

Спалили бабу )

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 13:18)   письмо автору
 
   для: confirm   (12.01.2015 в 10:34)
 

Извините, если не грамотно разъясняюсь.. Когда в opendir использую адрес F:/WebServers/home/localhost/www/photographer/wp-content/themes/shaken-grid/images/photo, то директория открывается, а если shaken-grid/images/photo, то директория не открывается.
Файл php, где используется opendir, лежит в папке shaken-grid.

  Ответить  
 
 автор: confirm   (13.01.2015 в 13:23)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 13:18)
 

Значит вы не верно указываете относительный путь. Он и называется относительным потому, что формируется относительно расположения скрипта выполняющего операции.

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 13:26)   письмо автору
 
   для: confirm   (13.01.2015 в 13:23)
 

Я вас понимаю, адрес я указываю правильно, я же вам написал. А opendir точно работает с относительными адресами?

  Ответить  
 
 автор: confirm   (13.01.2015 в 13:36)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 13:26)
 

Заходим в описание функции, читаем и смотрим первый пример ее использования, где используется относительный путь.
И все нормально. Если у вас баги при использовании относительных путей, то это баги именно путей ваших, а не функции.

  Ответить  
 
 автор: lightning.say   (13.01.2015 в 14:23)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 13:18)
 

>Файл php, где используется opendir, лежит в папке shaken-grid
тогда должно быть images/photo, текущий каталог не надо указывать только подкаталоги

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 14:42)   письмо автору
 
   для: lightning.say   (13.01.2015 в 14:23)
 

Да я и так пробовал.. Денвер выдаёт ошибку: "Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/localhost/www/photographer/function.opendir, которого не существует".Как мы видим, он обращается к виртуальному диску Z, может в этом и проблема???

  Ответить  
 
 автор: confirm   (13.01.2015 в 14:48)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 14:42)
 

Денвер и работает с виртуального диска, который создается при его запуске, имя которого ему задано при его установке.
И вообще, выбросьте в помойку этот Денвер, умер он, есть куда более богатый по возможностям, но такой же компактный как и Денвер сервер - Open Server.

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 14:55)   письмо автору
 
   для: confirm   (13.01.2015 в 14:48)
 

Да понятно, что он работает на виртуальном диске..

  Ответить  
 
 автор: Trianon   (13.01.2015 в 14:52)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 14:42)
 

В конце концов, вы можете попробовать открыть путь . и/или .. Просто чтобы понять, относительно какого из каталогов скрипт ведёт отсчет относительного пути.

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 14:57)   письмо автору
 
   для: Trianon   (13.01.2015 в 14:52)
 

"В конце концов, вы можете попробовать открыть путь . и/или .. Просто чтобы понять, относительно какого из каталогов скрипт ведёт отсчет относительного пути."..
извиняюсь, не очень понял!

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 15:01)   письмо автору
 
   для: Trianon   (13.01.2015 в 14:52)
 

Ааа, понял!

  Ответить  
 
 автор: Trianon   (13.01.2015 в 16:21)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 15:01)
 

>Да понятно, что он работает на виртуальном диске..

Вообще-то то, что диск виртуальный, а не обычный - для подавляющего большинства компонент денвера прозрачно.
Виртуальность диска это лишь прием, - создание возможности иметь полностью одинаковые пути на разных машинах, если приходится таскать проект с машины на машину.
Ни апач, ни php, ни mysql этого просто не замечают.

>Ааа, понял!
Из шести минут вы минимум две потратили на то, чтобы отписаться в форуме.
И четыре (60%) - чтобы вникнуть в суть.
Это ваше право, конечно, но я бы задумался об эффективности такого подхода.

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 17:31)   письмо автору
 
   для: Trianon   (13.01.2015 в 16:21)
 

Хорошо, задумаюсь!

  Ответить  
 
 автор: cherrypashka   (13.01.2015 в 17:32)   письмо автору
 
   для: Trianon   (13.01.2015 в 14:52)
 

Разобрался.. как вы и сказали, Денвер ведет отсчёт относительного пути совсем не от того каталога, которого ожидалось! Спасибо!

  Ответить  
 
 автор: Trianon   (13.01.2015 в 18:27)   письмо автору
 
   для: cherrypashka   (13.01.2015 в 17:32)
 

сам по себе денвер в данном случае тоже не при делах.
PHP будет вести себя определенным образом независимо от того, из денвера он, из openserver, или еще откуда.

В массиве $_SERVER есть два элемента, которые обычно проливают свет на вопрос.
<?
$_SERVER
['DOCUMENT_ROOT']
$_SERVER['PHP_SELF']


сами по себе, по отдельности они не помогут. Только вместе.

  Ответить  
 
 автор: cherrypashka   (19.01.2015 в 12:11)   письмо автору
 
   для: Trianon   (13.01.2015 в 18:27)
 

Извиняюсь, что долго не отвечал! Свет они проливают, но как они мне помогут?

  Ответить  
 
 автор: Trianon   (19.01.2015 в 13:15)   письмо автору
 
   для: cherrypashka   (19.01.2015 в 12:11)
 

светом.

  Ответить  
 
 автор: cherrypashka   (19.01.2015 в 13:31)   письмо автору
 
   для: Trianon   (19.01.2015 в 13:15)
 

Да с помощью ./.. я уже разобрался.

  Ответить  
 
 автор: Trianon   (12.01.2015 в 13:50)   письмо автору
 
   для: cherrypashka   (12.01.2015 в 03:53)
 

если вы об адресах в заголовке http-запроса, то все, что работают в apache - работают и в денвере.
Если вы об URL, то URL неполный не бывает.

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

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