Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Открытие загруженного фала в браузере


rdpv

Recommended Posts

Здравствуйте! OpenCart Version 2.3.0.2 (rs.6) Загружаю файлы pdf через Каталог->Загрузки.  потом в товаре через связи привязываю эти файлы к товару в шаблон вывожу для загрузки и открытия файла так:

<?php if($downloads){ ?>
			<li><i aria-hidden="true"></i> Скачать: <?php foreach($downloads as $download){ ?><a href="<?php echo $download['href']; ?>" title=""><?php echo $download['name']; ?><?php echo " (". $download['size'] .")";?><br></a><?php } ?></li>
		 <li><i aria-hidden="true"></i> Открыть: <?php foreach($downloads as $download){ ?><a href="<?php echo $download['dlink']); ?>" title=""><?php echo $download['name']; ?></a><?php } ?></li>
<?php } ?>

в файле catalog/controller/product/product.php

 

      $data['downloads'] = array();

$results = $this->model_catalog_product->getDownloads($this->request->get['product_id']);

foreach ($results as $result) {
    if (file_exists(DIR_DOWNLOAD . $result['filename'])) {
        $size = filesize(DIR_DOWNLOAD . $result['filename']);
		$dlink = 'download/'.$result['filename'];
        $i = 0;
        $suffix = array(
            'B',
            'KB',
            'MB',
            'GB',
            'TB',
            'PB',
            'EB',
            'ZB',
            'YB'
        );

        while (($size / 1024) > 1) {
            $size = $size / 1024;
            $i++;
        }

        $data['downloads'][] = array(
            'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])),
            'name' => $result['name'],
            'size' => round(substr($size, 0, strpos($size, '.') + 4), 2).$suffix[$i],
			'dlink' => $dlink,
            'mask' => $result['mask'],
            'href' => $this->url->link('product/product/download', 'product_id='.$this->request->get['product_id'].'&download_id='.$result['download_id'])
        );
    }
}

суть в том что на скачивание ссылка работает все норм а вот на открытие выдает 404

 

Not Found
The requested URL /download/file.pdf.5LCEZNLCu25bB1xXwxd4wlbCDN9MmXck was not found on this server.

папку download для теста перенес в корень в config.php переписал путь

Змінено користувачем rdpv
Надіслати
Поділитися на інших сайтах


31 минуту назад, rdpv сказал:

в config.php переписал путь

а при чем конфиг, если вы просто прописываете  ссылку

32 минуты назад, rdpv сказал:

$dlink = 'download/'.$result['filename'];

 

Надіслати
Поділитися на інших сайтах

абсолютная ссылка, прекрасно работает(проверил)

что-то вы не так делаете.

Надіслати
Поділитися на інших сайтах

Вернул настройки config.php на дефолтные теперь у меня все так

foreach ($results as $result) {
    if (file_exists(DIR_DOWNLOAD . $result['filename'])) {
        $size = filesize(DIR_DOWNLOAD . $result['filename']);
		$dlink = '/system/storage/download/'.$result['filename'];
        $i = 0;
        $suffix = array(
            'B',
            'KB',
            'MB',
            'GB',
            'TB',
            'PB',
            'EB',
            'ZB',
            'YB'
        );

        while (($size / 1024) > 1) {
            $size = $size / 1024;
            $i++;
        }

        $data['downloads'][] = array(
            'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])),
            'name' => $result['name'],
            'size' => round(substr($size, 0, strpos($size, '.') + 4), 2).$suffix[$i],
			'dlink' => $dlink,
            'mask' => $result['mask'],
            'href' => $this->url->link('product/product/download', 'product_id='.$this->request->get['product_id'].'&download_id='.$result['download_id'])
        );

теперь вываливает на ссылку Открыть

You don't have permission to access /system/storage/download/file.pdf.TlwxNKj3TxBof5UetNIAB3dh4qgt2h5n on this server.

 

можно посмотреть на ваш вариант?

Надіслати
Поділитися на інших сайтах


  • 1 month later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.