Всем привет! Пытаюсь сделать картинки товара в email счете. В итоге приходит счет, где есть код <img src=""> но вот такой там путь: http://site.ru/image/cache/data/category+10/item123+(2)-60x60.jpg и из-за этого изображение не грузится, потому что на самом деле путь такой на хостинге - http://site.ru/image/cache/data/category 10/item123 (2)-60x60.jpg То есть нужно вместо + поставить пробел и тогда все нормально отображается. Делаем в шаблоне письма преобразование с помощью urldecode: <img src="<?php echo urldecode($product['thumb']); ?>" И все равно на почту приходит письмо, где изображения берутся по этому пути - http://site.ru/image/cache/data/category+10/item123+(2)-60x60.jpg Почему не работает urldecode?
Во первых, вопрос с пробелами, киррилицей и прочими символами в названиях файло, картинок, папок - старый, и не воспринимает эти символы - использование же пробелов - неграмотно, лучше либо дефисом либо нижним подчеркиванием заменить, во 2-х, если уж такая ситуация случилась, то попробывать отловить, в какой момент (наверное регексп на фильтро-замену стоит) заменяет пробел на плюс и либо закомментировать либо поправить, к сожалению "боевого коня" для теста не имею что б практически проверить теорию...
Baco, то есть если стоит регексп - то даже в самом шаблоне urldecode($product['thumb']) - никак не поможет? Просто не заметил этой бяки с пробелом (все картинки на сайте отображаются отлично хоть и с пробелами) - а вот лажа только в письме с заказом. Просто сейчас если убирать и кодировать пробелы - то надо и на хостинге переименовывать, а геморно очень. И где же искать этот регексп - в контроллере?
Попробуй Код: <img src="<?php echo str_replace('+',' ',$product['thumb']); ?>" Примитивно, но должно быть эффективно
Bogdan, да, пробовал и str_replace такое и reg_exp - ничего не помогает, все равно в письме ссылка на картинку кодируется с "+". В общем решил пока все переделать и избавится от пробелов вообще.