Доброго времени суток.
У меня есть 2 сайта, на первом скрипт отрабатывает на втором нет:
Код
<?php
$img_formats = array ('jpg','jpeg','png','gif','bmp');
foreach ($img_formats as $format) {
$filename = $sitename.'/soft/'.$cat.'/'.$prog.'/big.'.$format;
if (file_exists($filename)) {
echo $filename;
?>
Где
$sitename - название сайта.
$cat - каталог программы.
$prog - название программы.
$format - передаваемый формат из массива перебором с проверкой на существование.
Короче, смысл такой, на первом сайте путь к картинке берется напрямую, а на втором получается что удаленно.
В принципе на втором сайте путь пишется все верно, только в конце расширение он прописывает bmp, что находится в самом конце массива, подскажите, ПОЧЕМУ РАСШИРЕНИЯ В МАССИВЕ НЕ ПЕРЕБИРАЮТСЯ?
1. Romaxa - 28 Марта, 2011 - 22:14:14 - перейти к сообщению
2. Viper - 29 Марта, 2011 - 07:52:29 - перейти к сообщению
Romaxa пишет:
а на втором получается что удаленно.
Если у вас в имя файла попадает расширение, то ваша конструкция не будет работать.
3. Romaxa - 29 Марта, 2011 - 15:45:08 - перейти к сообщению
Тот скрипт что написан ранее рабочий, но работает только для сайта http://to4kacom[dot]ru/ , если этот скрипт прописать во второй http://soft-2[dot]ru/ то перестает работать, а хочется чтобы работал. ( в общем у массива перебор перестает работать, в конце пути прописывает bmp, а требуется jpg или png. )
Вот пример http://soft-2[dot]ru/view-soft.php?cat=6&id=411
Вот пример http://soft-2[dot]ru/view-soft.php?cat=6&id=411
4. JustUserR - 29 Марта, 2011 - 21:07:56 - перейти к сообщению
Romaxa пишет:
В общем случае использование размещения целевого файлового объекта в виртуальной области целевого web-сервера, на основании использования базовой конфигурации относительно политики сопоставления вложенных определенных URL-ресурсов с реальными файловыми объектами, а также проведение процесса формирования информационного поля и ассоциированного парметра MIME-типа в повышенном базовом элементном уровне трактования, предполгает возможность осуществления дифференциации оригинального расширения файлового объекта, размещенного в конструкции URL-адреса в области ассоциированного трактования именованного URL-элемента, и реального транспортируемого MIME-типа для реального информационного поля в повышенном базовом элементном уровне трактования
В принципе на втором сайте путь пишется все верно, только в конце расширение он прописывает bmp, что находится в самом конце массива, подскажите, ПОЧЕМУ РАСШИРЕНИЯ В МАССИВЕ НЕ ПЕРЕБИРАЮТСЯ?
5. asql - 29 Марта, 2011 - 22:21:48 - перейти к сообщению
for(){} в помощь
6. Romaxa - 30 Марта, 2011 - 08:32:25 - перейти к сообщению
Не помогло:
<?php
// Создаем массив, куда прописываем расширения!
$img_formats = array('jpg','jpeg','png','gif','bmp');
// Цикл for используется для итераций по массиву и вывода каждого элемента
for ($i = 0; $i < sizeof($img_formats); $i++)
{
// Здесь должна лежать картинка.
$filename_big = $sitename.'/soft/'.$cat.'/'.$prog.'/big.'.$img_formats[$i];
// Проверка на существование картинки.
if (file_exists($filename_big)) {printf
?>
<img src="<?php echo $filename_big;?>"/>
<?php
;}}
?>
Все то же самое выдает....
<?php
// Создаем массив, куда прописываем расширения!
$img_formats = array('jpg','jpeg','png','gif','bmp');
// Цикл for используется для итераций по массиву и вывода каждого элемента
for ($i = 0; $i < sizeof($img_formats); $i++)
{
// Здесь должна лежать картинка.
$filename_big = $sitename.'/soft/'.$cat.'/'.$prog.'/big.'.$img_formats[$i];
// Проверка на существование картинки.
if (file_exists($filename_big)) {printf
?>
<img src="<?php echo $filename_big;?>"/>
<?php
;}}
?>
Все то же самое выдает....
7. Viper - 30 Марта, 2011 - 14:35:32 - перейти к сообщению
Romaxa для начала clearstatcache(); перед циклом.
в цикле сделайте
в цикле сделайте
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- echo $sitename.'/soft/'.$cat.'/'.$prog.'/big.'.$img_formats[$i].'<br>';
убедитесь что путь правильный.