pdf file wil niet openen op juiste wijze

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Willem L

Willem L

28/11/2012 15:10:01
Quote Anchor link
Ik heb een overzicht met pdf-files.
Deze zijn aan te klikken op mijn site. Na klikken erop
moet acrobat reader openen om de inhoud in te zien.
Maar komt nu elke keer met een index directory.
Wat ik wil is eigenlijk dat bij het klikken op de naam
buiten de site om, acrobat reader opstart met de
gekozen bestandsnaam.
Moet ik ergens een connectie maken o.i.d.
 
PHP hulp

PHP hulp

22/11/2024 00:59:31
 
Marvin H

Marvin H

28/11/2012 15:13:15
Quote Anchor link
Laat je php/html code eens zien waarbij de PDF link wordt gegenereerd...
 
Willem L

Willem L

28/11/2012 15:43:44
Quote Anchor link
heb aardig wat gegoogled, weet eigelijk dit te omschrijven.
$file zijn de de pdf-files.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
while($data = mysql_fetch_assoc($query))
    {        
    $bid=$data['id'];
    $omschrijving = stripslashes( $data['omschrijving'] );
        $file = stripslashes($data['filenaam']);
        $datum = $data['datum'];
    $i++;
            
            echo '<tr>'.PHP_EOL;
            echo '<rij>'.PHP_EOL;
            echo '<td class="formleft">'.PHP_EOL;
            echo $i. ")".PHP_EOL;
            echo '</td>'.PHP_EOL;            
            
            echo '<td class="vast30">'.PHP_EOL;
            echo $datum.PHP_EOL;
            echo '</td>'.PHP_EOL;
            
            echo '<td class="vast30">'.PHP_EOL;
            echo $omschrijving.PHP_EOL;
            echo '</td>'.PHP_EOL;
            
            echo '<td class="formleft">'.PHP_EOL;            
            //echo $file.PHP_EOL;
            echo '<A HREF="../folders">'.$file.'</A>'.PHP_EOL;


            //echo '<a href= "probeersel/berichten/folders/'.$file.'</a>"'.PHP_EOL;
            echo '</td>'.PHP_EOL;
 
Kris Peeters

Kris Peeters

28/11/2012 15:43:53
Quote Anchor link
Merk op dat elke webbrowser anders zal reageren. De ene zal de file proberen openen (en dus acrobat automatisch openen), de ander browser zwiert die pdf onmiddellijk naar de Downloads-map.

Daarbij komt nog dat de gebruiker zelf kan instellen hoe het moet gebeuren.

Maar waar je vraag basically op neerkomt, is een "force download" script. (Google "php force download" voor meer documentatie).

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$file
= "pdf_document.pdf";  // het juiste pad niet vergeten.  Jij moet dus zien voor een systeem om de juiste file te kiezen...
if (!empty($_GET['download'])) {
  if (is_file($file)) {
    header('Content-disposition: attachment; filename=' . $file); // dit kan misschien problemen geven als er vreemde tekens in de bestandnaam staan
    header('Content-type: application/pdf');
    readfile($file);
  }
}

else {
  echo 'bla bla ... to download file, click <a href="?download=1">here</a>';
}

?>
 
TJVB tvb

TJVB tvb

28/11/2012 17:05:27
Quote Anchor link
@Kris
hetscript.php?download=../../databaseconfig.php en ik krijg databaseconfig.php als pdf binnen. Openene in kladblok en ik kan het gewoon lezen.
Oftewel zorg voor je beveiliging
 
Kris Peeters

Kris Peeters

28/11/2012 17:18:21
Quote Anchor link
Is het je opgevallen dat ik de bestandsnaam gehard-coded heb en op geen enkele manier afhankelijk gemaakt van user input?

enkel maar een "?download=1" om aan te geven: nu downloaden
en commentaar waarin ik zeg dat ze zelf moeten zien hoe ze aan de juiste file komen (bv. op basis van een $_GET['id'] de juiste bestandsnaam uit een DB lezen)
Gewijzigd op 28/11/2012 17:19:05 door Kris Peeters
 
TJVB tvb

TJVB tvb

29/11/2012 10:23:57
Quote Anchor link
@Kris, ik heb inderdaad niet goed gekeken. Sorry
 
Willem L

Willem L

29/11/2012 13:33:17
Quote Anchor link
Bij onderstaande code wordt Acrobat reader wel geopend
maar krijg steeds foutmelding dat het niet een supported file is
of damage is of bijv. een email attachment en niet juist
gecodeerd is.
I.p.v. attachment heb ik ook inline geprobeerd maar dat werkt ook niet.
Met openen in acrobat reader wordt het bestand wel geopend.
Ik gebruik om een Word-document om te zetten naar een pdf file
het programma PDFCreator 1.6
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
} elseif ( isset ($_GET['p']) && $_GET['p'] == "download") {
$filetitel = $_GET['file'];  // het juiste pad niet vergeten.  Jij moet dus zien voor een systeem om de juiste file te kiezen...

    if (!empty($_GET['download'])) {
        
        if (is_file("folders/".$filetitel)) {            
            header('Content-type: application/pdf');            
            header('Content-Disposition: attachment; filename='.$filetitel); // dit kan misschien problemen geven als er vreemde tekens in de bestandnaam staan
            readfile($filetitel);
        }
    }
}else {
  echo 'bla bla ... to download file, click <a href="?download=1">here</a>';

}
Gewijzigd op 30/11/2012 09:56:15 door Willem L
 
Chris PHP

Chris PHP

30/11/2012 10:12:19
Quote Anchor link
Een makkelijke oplossing (niet de netste) is gewoon wanneer men klikt op een pdf file je ze naar een landingpage stuurt (bijvoorbeeld view_pdf.php) en je daar de pdf gewoon opent in een iframe.

Dan opent hij hem altijd en hoef je geen zorgen te maken wat welke browser doet, en hoe mensen het zelf hebben ingestelt. Zet op die view_pdf.php gewoon een Back/Terug link of open de link in een nieuw venster/tabblad.

Dan hoef je niets te 'forceren' of te verplichten om te downloaden.
 
Willem L

Willem L

30/11/2012 14:40:40
Quote Anchor link
@Chris
Dat kan ook een mogelijkheid zijn.
Maar ben nu zover dat er al wat gebeurt
maar wel de melding
Warning: Cannot modify header information - headers already sent by (output started

ben nu zoekende, maar is naar mijn mening
voor mij even te hoog gegrepen. Zie door de
bomen even het bos niet meer.
kijk even www.wasbuytenwegh-deleyens.nl
dan berichten en dan november, klik op de pdf file
dan zie wat er gebeurt. haha
 
Albert de Wit

Albert de Wit

30/11/2012 15:32:06
Quote Anchor link
ik ben niet zeker van mijn zaak maar wat als je je pdf file in een iframe laad? ik doe dat wel altijd als ik een pdf ergens inlaad en hem in de pagina wil hebben. ik maak alleen wel gebruik van fpdf, en dat is iets anders dan een pdf inlezen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.