Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » file_exists не находит файл с абсолютным адресом

file_exists не находит файл с абсолютным адресом


     13.11.2013    Все вопросы » Общие вопросы по PHP    2588

вопрос
почему то file_exists не находит файла при абсолютном указании адреса на него
в $row['foto'] хранится полная ссылка на файл http://fishingclub67.ru/uploads/photos/micro/[1]_23_Sep_13/133_2013-09-28.jpg


if (file_exists($row['foto'])) $tpl->set( '{foto}', $row['foto'] );
else $tpl->set( '{foto}', "{THEME}/dleimages/noavatar.png" );


подскажите плз что переделать

Ответил: casper_gt


Решил


$fotofiles=@get_headers($row['foto']);
if(!isset($fotofiles) || $fotofiles[0] == 'HTTP/1.1 404 Not Found')$tpl->set( '{foto}', "{THEME}/dleimages/noavatar.png" );
$tpl->set( '{foto}', $row['foto'] );
}

5 комментариев

rashpil
Эксперт

rashpil - 13 ноября 2013 17:29 -

А можно и так:

if (file_exists(str_replace($config['http_home_url'], ROOT_DIR, $row['foto']))

casper_gt
Юзер

casper_gt - 13 ноября 2013 17:37 -

rashpil,
не так нельзя так как в
$row['foto']
находится полная ссылка на фотку
 http://fishingclub67.ru/uploads/photos/micro/[1]_23_Sep_13/133_2013-09-28.jpg

dj-avtosh
PHP-developer

dj-avtosh - 15 ноября 2013 11:13 -

if( ! empty ( $row['foto'] ) && GetImageSize( $row['foto'] ) )
{

   // exists

}

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

dj-avtosh
PHP-developer

dj-avtosh - 15 ноября 2013 11:15 -

Можно попробовать курлом

if ( !$fp = curl_init( $row['foto'] ) )
{
   // not exists
}

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

dj-avtosh
PHP-developer

dj-avtosh - 15 ноября 2013 11:17 -

А в php5 можно еще через
 is_file

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх