Devendraoli, Да я знаю об этом. Но что же поделать. Людям нужен тег [img][/img] а туда они будут писать ссылки на разные сайты.
# PaRtiZzaN (17.02.2017 / 08:58)
Devendraoli, Да я знаю об этом. Но что же поделать. Людям нужен тег [img][/img] а туда они будут писать ссылки на разные сайты.
Можно скриптом скачивать картинку себе на сервер и выводить её уже со своего сайта
PaRtiZzaN, Кто то уже сделал Коенинг или Доктор постороние сайты не показывает
Вроде движок мобильный но как с телефона редактировать этот язык gettext
ну по поводу тега имГ надо тему отдельную сделать, так как некоторые не хотят грузить к себе картинку и прочие мелочи
# Koenig (17.02.2017 / 12:47)
ну по поводу тега имГ надо тему отдельную сделать, так как некоторые не хотят грузить к себе картинку и прочие мелочи
Читал, что яндекс у себя в почте использует для этого свои прокси
# Jesk (17.02.2017 / 12:26)
Вроде движок мобильный но как с телефона редактировать этот язык gettext
Ты что-то попутал
При чем тут разработка? Это совсем другое и о редактировании кода такого уровня (Zend Framework) с мобильного телефона говорить не приходится. Если хочешь кодить с телефона, бери простые движки 2005-2008 годов выпуска.
# Koenig (17.02.2017 / 12:47)
ну по поводу тега имГ надо тему отдельную сделать, так как некоторые не хотят грузить к себе картинку и прочие мелочи
функции обработки входящих данных ()
/**
* @param array $url
* @return string
*/
function redirect_image_replace($url)
{
if(preg_match('#^https?://'.$_SERVER['SERVER_NAME'].'#', $url[1])){
return '<img src="'.preg_replace('|^https?:\/\/'.$_SERVER['SERVER_NAME'].'|i', '', $url[1]).'" alt="" />'; // если не хотим ссылки на свой же сайт, возвращаем пустоту, (рекомендуется, как защита от попыток флуда путем вставки uri в адрес картинки)
}else{
return '<img class="out-image" src="/out-image.php?image='.base64_encode($url[1]).'" alt="" />';
}
}
функция редиректа, переадресовывает и убивает скрипт, воизбежание
/**
* @param string $image
*/
function redirect_image($image){
header("Location: ".preg_replace('|^https?:\/\/|i', '//', $image));
exit();
}
парсим текст на предмет ббкода картинки
$clean_html = preg_replace_callback('|\[img\](https?://[^\[]+)\[\/img\]|i', 'redirect_image_replace', $clean_html);
содержимое
out-image.php
redirect_image(base64_decode($_GET['image']));
просто до безобразия, и работает безотказно. вот и все.
кд на ходу адаптировал, т.к. не использую ббкоды давно, но вроде ни где не накосячил
UPD поддерживает http и https
UPD2 все равно, не рекомендовал бы пропускать картинки по хттп
ramzes, тоже думал про вариант с base64 но хотел тип поля в бд менять, и прям в текст пилить