@Obivankinobi

Загрузка фотографий с превью как организовать?

Добрый день!
Столкнулся с проблемой, требуется загрузить фотографии и одновременно показывать их миниатюры и привьюшки с помощью фэнсибокса, но путь к фотографиям получается в base 64 и все начинает тормозить. Делал как тут jsfiddle.net/kempxtno/1
  • Вопрос задан
  • 158 просмотров
Пригласить эксперта
Ответы на вопрос 1
@tvelforce
Загружаете файл, преобразуете его в jpg и только потом выводите.
Например на php
function base64_to_jpeg($img_base64, $img_name) {
    $uploaddir = 'files/';

    // Получаем расширение файла
    $getMime = explode('.', $img_name);
    $mime = end($getMime);

    // Выделим данные
    $data = explode(',', $img_base64);

    // Декодируем данные, закодированные алгоритмом MIME base64
    $encodedData = str_replace(' ','+',$data[1]);
    $decodedData = base64_decode($encodedData);

    // Вы можете использовать данное имя файла, или создать произвольное имя.
    // Мы будем создавать произвольное имя!
    $randomName = substr_replace(sha1(microtime(true)), '', 12).'.'.$mime;

    file_put_contents($_SERVER["DOCUMENT_ROOT"]."/".$uploaddir.$randomName, $decodedData);

    return( $uploaddir.$randomName ); 
}


А еще лучше создать миниатюру изображения (можно в том же base64) и её то и выводить.
Тормозить начинает если файл непомерно велик, стоит задуматься над уменьшением его размера.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
05 нояб. 2024, в 19:14
100000 руб./за проект
05 нояб. 2024, в 19:07
12000 руб./за проект
05 нояб. 2024, в 17:38
150000 руб./за проект