HTML en PDF Documenten

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 15-10 19:22
Ik heb een ontwikkel omgeving bestaande uit PHP en WAMP server en daarmee ontwikkel ik websites. Alleen de afgelopen tijd merk ik dat ik geen PDF meer kan zien op de sites. In de ontwikkel omgeving wordt alles goed weergegeven (gebruikmakend van <object> en Embed>) en dan FTP ik het naar mijn provider en update mijn database aldaar. Als ik dan op IE9 of 10, Windows Phone 8.1, Ipad en Iphone erna ga dan zie ik geen PDF document. Wat ik wel ziet is het pagina zoals het hoort de ruimte die nodig is waar de PDF moet staan maar uiteraard is dit blanco.

Verder heb ik voor oplossingen gezocht op http://www.w3schools.com/html/default.asp en http://stackoverflow.com/...ay-pdf-within-web-browser, en http://stackoverflow.com/questions/1244788/embed-vs-object. Op stackoverflow reppen ze allen over <object>, <embed>, <iframe> en het gebruik van Javascript. Als ik <iframe> gebruik dan komt er een vraag of ik het wil "downloaden", "Opslaan Als" of "direct openen". Doe ik het laatste dan opende het PDF in PDF reader van Adobe. Verder doet de andere het ook. Maar dit is niet wat ik wil. Ik wil dat het PDF in mijn webpage tevoorschijn komt. Ik heb <object>, <embed> met de goede parameters gebruikt maar krijg geen solaas.

Heeft iemand dit al tegen gekomen en zo ja hoe is dit opgelost. Mijn code is als volg:

PHP:
1
2
3
4
5
echo "<object width=\"750\" height=\"1060\" data=\"PDF/$row[PDF]#scrollbar=0\" type=\"application/pdf\">";

echo "<embed width=\"750\" height=\"1060\" name=\"pdf\" src=\"PDF/$row[PDF]#scrollbar=0\" type=\"application/pdf\" />";

echo "</object>";


Daarnaast heb ik ook in de header dit staan:

PHP:
1
 echo "<meta http-equiv=\"Content-Type\" content=\"text,html,pdf; charset=utf8\" />";

[ Voor 19% gewijzigd door RobIII op 04-03-2015 21:25 . Reden: [code] tags toegevoegd ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Again: laat eens code zien? (Hoe post je code?)
We hebben hier toch geen kristallen bol? Maak desnoods even een testcase aan op jsfiddle.net. En waarom krijg ik links naar w3schools (lees http://www.w3fools.com/ ook even ;) ) en stackoverflow (ons allen royaal bekend) maar niet naar de relevante pagina's waar jij dan "zus-en-zo" hebt gelezen/gevonden :? Je strooit nu alleen met "<object>, <embed>, <iframe>", daar hebben we toch helemaal niets aan om iets zinnigs om op te zeggen zonder te zien hoe je dat dan toepast?

Op Stackoverflow lees ik namelijk al na 3 seconden googlen het volgende:
Probably the best approach is to use the PDF.JS library. It's a pure HTML5/JavaScript renderer for PDF documents without any third-party plugins.

Online demo: http://mozilla.github.com/pdf.js/web/viewer.html

GitHub: https://github.com/mozilla/pdf.js
of deze:
You can also use Google PDF viewer for this purpose. As far as I know it's not an official Google feature (am I wrong on this?), but it works for me very nicely and smoothly. You need to upload your PDF somewhere before and just use its URL:

<iframe src="http://docs.google.com/gview?url=http://example.com/mypdf.pdf&embedded=true" style="width:718px; height:700px;" frameborder="0"></iframe>

What is important is that it doesn't need a Flash player, it uses JavaScript.
Die laatste heb ik in 3 seconden in een test-case vewerkt en werkend.

Wat werkt daar niet aan / is daar niet duidelijk aan dan precies?

[ Voor 69% gewijzigd door RobIII op 04-03-2015 21:08 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 15-10 19:22
De tweede heb ik wel gezien maar het maak gebruik van een 3rd party viewer. de eerste ga ik zeker na kijken.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
lunarmoon schreef op woensdag 04 maart 2015 @ 20:44:
Heeft iemand dit al tegen gekomen en zo ja hoe is dit opgelost. Mijn code is als volg:
Nou heb ik je al 3 keer gewezen op Hoe post je code?....
Voeg je de volgende keer even zelf de code tags toe a.u.b.?
lunarmoon schreef op woensdag 04 maart 2015 @ 20:44:
PHP:
1
2
3
4
5
echo "<object width=\"750\" height=\"1060\" data=\"PDF/$row[PDF]#scrollbar=0\" type=\"application/pdf\">";

echo "<embed width=\"750\" height=\"1060\" name=\"pdf\" src=\"PDF/$row[PDF]#scrollbar=0\" type=\"application/pdf\" />";

echo "</object>";
Beetje lastig om voor ons te zien wat /$row[PDF] precies bevat/output he? ;) Als je nou even de output van die code (erbij) post... Dus iets als:
HTML:
1
<object width="750" height="1060" data="PDF/mydocument.pdf#scrollbar=0" type="application/pdf">

Misschien klopt de url naar je bestand wel simpelweg niet? Heb je dat al eens gecontroleerd? (Debuggen: Hoe doe ik dat?).
lunarmoon schreef op woensdag 04 maart 2015 @ 20:44:
Daarnaast heb ik ook in de header dit staan:

PHP:
1
 echo "<meta http-equiv=\"Content-Type\" content=\"text,html,pdf; charset=utf8\" />";
Daarom zei ik in je vorige topic ook specifiek http headers ;) Wat je hier post zijn html meta tags, specifiek de pragma directive http-equiv, wat een 'substituut' is voor HTTP headers (lees: poor-man's solution).

Dat zou betekenen iets als:
PHP:
1
2
header('Content-type: application/pdf');
//output file here

of dat je je webserver (Apache) goed/beter moet configureren als de juiste HTTP headers niet automatisch al verzonden worden bij .pdf documenten.

Overigens vraag ik me af of browsers 'standaard' (zonder JS e.d.) wel zomaar (in alle gevallen?) PDF's vrolijk willen embedden (i.v.m. CSP's, CORS en wat er mogelijk in jouw specifieke geval nog meer allemaal bij komt kijken...)

[ Voor 17% gewijzigd door RobIII op 04-03-2015 21:25 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 15-10 19:22
Bedankt RobIII ik heb het nu werkend en maak gebruik van je 2de suggestie. Dan maar 3rd party ondersteuning.