2015-04-19 5 views
1

Я создаю сайт WordPress для агента по аренде недвижимости (недвижимости), который связывается с их системой управления собственностью (LetMC).Предотвращение автоматической загрузки PDF

LetMC предоставляет брошюры PDF собственности через URL, например (игнорировать содержание брошюры, еще не разработаны):

https://home.letmc.com/property.brochure?propertybrochure={060a-549c-6de2-8fcf}&Bucket=CubaLive_priestley

Я построил хорошую систему, чтобы показать собственности фотографии, брошюры и используя лайтбокс через AJAX, и поэтому я не хочу автоматически загружать PDF-файл. В настоящее время я сохраняю PDF в временную папку и открываю ее прямо с веб-сервера сайтов, но в идеале я хочу избежать сохранения PDF ....

Возможно ли это?

Текущий прогресс:

+0

Вы хотите просмотреть PDF в Интернете на своем веб-сайте? –

+0

@GiancarloColfer В лайтбокс идеально, поэтому мне нужно имя файла для iframe src. Текущая система работает ... но это лучшая практика? Кроме того, я не совсем уверен, как работать с временной папкой .... Я хотел бы удалить PDF после его просмотра или, возможно, настроить задание cron для удаления папки один раз в день –

ответ

0

Google, Google Docs имеет инструмент для вставки отличный Iframe, который позволяет вставлять и просматривать документы в Интернете (PDF включительно)!

Проверьте, пожалуйста, код. Вам просто нужно указать URL-адрес документа.

<iframe id="app-iframe" class="iframe-doc" src="http://docs.google.com/viewer?url=http://www.giancarlocolfer.com/wp-content/uploads/2015/04/pdf-sample.pdf&amp;embedded=true" height="600" width="680" title="PDF Sample" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> 

Вы можете увидеть живую демо/пример этого PDF and Document Online Reader IFrame инструмент встраивания в течение моей профессиональной web development and design blog.

+0

не выглядит чтобы работать с URL-адресами LetMC, я боюсь ... было бы хорошим решением, хотя :) –

+0

Вы проверили вывод заголовка своего скрипта? Убедитесь, что вы отправляете: Content-type: application/pdf, а затем повторите попытку инструмента iframe google docs. –

1

Вам не нужно сохранять файл, чтобы просмотреть его позже. Вы можете просто открыть файл PDF и выплюнуть его непосредственно в IFRAME, как это:

Создание файла getpdf.php:

$url = urldecode($_GET['url']); 
$pdf_data = file_get_contents($url); 
header('Content-type: application/pdf'); 
echo $pdf_data; 

Ammend ваш код, как это (поместите его прямо под $output = '';):

$letmc_brochure_url = urlencode($letmc_brochure_url);

$output .= '<div class="lightbox"><iframe src="getpdf.php?url=' . $letmc_brochure_url . '" width="97%" height="550"></iframe><button title="Close (Esc)" type="button" class="controls mod-close mfp-close"><i class="icon icon-close"></i></button></div>';

Единственным недостатком здесь является то, что каждый раз, когда файл запрашивается, он должен быть снова загружен сервером (нет кеширования), что может нанести определенный ущерб вашим ресурсам сервера.

+0

не может получить эту работу ... попробовали аналогичное решение. Мой ответ AJAX - это код PDF. Кроме того, это не будет работать с моим лайтбокс-решением, поскольку мне нужен источник iframe. Спасибо за ввод, хотя –

+0

Я обновил код. Создайте новый файл getpdf.php и вставьте в него мой код. Затем вы можете вызвать его следующим образом: '' Вам может понадобиться 'urlencode()/urldecode()' url, чтобы заставить его работать. –

+0

Можете ли вы написать полный пример, пожалуйста ... Я не могу, как вы пришли к этому решению, выглядит странно для меня –

Смежные вопросы