HEADER Content Fehler bei PDF's

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • HEADER Content Fehler bei PDF's

    Hallöchen,
    habe mal wieder ein Problemchen:

    Wenn ich per HEADER eine PDF zum Download erzwinge bekomme ich eine Fehlermeldung bei späteren öffnen des PDF-Dokuments. Woran kann das liegen?

    Mein Code:
    <?php
    require ("../../module_eng/php/session.php");
    require ("../../module_eng/php/funktionen.php");
    require ("../../module_eng/php/mysql.php");

    ueberpruefeBenutzer();

    if (isset($download) && $download = 1) {
    header ("Content-Type: application/pdf");
    header ("Content-Type: application/octetstream");
    header ("Content-Disposition: attachment; filename=\"$da_name\"");
    $filename = "../../dateien/".$da_verzeichnis."/".$da_name;
    $fp = fopen($filename, "rb");
    if ($fp)
    {
    $buffer = fread ($fp, filesize ($filename));
    echo $buffer;
    fclose($fp);
    }
    }
    ?>

    Alle anderen Dateien funktionieren problemlos....!!!!!!!!

    Grüße
    Mario
    Mario Heiß IT-Services

  • #2
    wieso 2. content-type angaben?

    naja, was sagt denn der pdfviewer genau als fehlermeldung?

    Kommentar


    • #3
      Antwort von PDF Viewer 6

      Der Viewer sagt nur, dass das Dokument beschädigt sein und nicht wiederhergestellt werden kann....
      Mario Heiß IT-Services

      Kommentar


      • #4
        wie kommt das pdf denn rein? lädst du das vorher hoch über form+php?
        wenn ja, kanns gut sein, dass die magic_quotes zugeschlagen haben.

        Kommentar


        • #5
          Hmmm

          Kann eigentlich nicht sein, denn wenn ich mir das file per ftp herunterlade geht es problemlos auf!!!!!
          Mario Heiß IT-Services

          Kommentar


          • #6
            dann mal bitte die header angaben raus und rufe die url zu dem file über adresszeile vom browser auf. vielleicht kommt da ne fehlermeldung

            Kommentar


            • #7
              URI

              Wenn ich die URL direkt über den Browser aufrufe funktioniert es auch, allerdings wird dann Adobe Reader dirket geöffnet und es erscheint keine Download-Aufforderung....
              Mario Heiß IT-Services

              Kommentar


              • #8
                ok, dann mal die harte tour

                bitte den folgenden code mit deinem austauschen und anpassen.
                keine ahnung was es is, wenns damit net läuft...

                PHP-Code:
                if ( isset( $_SERVER"HTTPS" ] ) )
                {
                    
                header"Pragma: " );
                    
                header"Cache-Control: " );
                    
                header"Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
                    
                header"Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT" );
                    
                header"Cache-Control: no-store, no-cache, must-revalidate" );
                    
                header"Cache-Control: post-check=0, pre-check=0"false );
                }
                else if ( 
                $disposition == "attachment" )
                {
                    
                header"Cache-control: private" );
                }
                else
                {
                    
                header"Cache-Control: no-cache, must-revalidate" );
                    
                header"Pragma: no-cache" );
                }

                header"Content-Type: $mime);
                header"Content-Disposition: $disposition; filename=\"" trimhtmlentities$orig_name ) ) . "\"" );
                header"Content-Description: "  trimhtmlentities$orig_name ) ) );
                header"Content-Length: $size);
                header"Connection: close" );

                $speed 120// 120 should set the limit to ~90kb/s
                $fp = @fopen"""rb" );
                while( !@
                feof$fp ) && !connection_aborted() )
                {
                    echo @
                fread$fp1024*$speed );
                    
                flush();
                    
                sleep);
                }

                @
                fclose$fp ); 

                Kommentar


                • #9
                  Auch net

                  Also mit dem Script geht es gar nicht...
                  Mario Heiß IT-Services

                  Kommentar


                  • #10
                    hm, dann bilde ich mir das ein, dass ich gerade damit ein pdf runtergeladen habe

                    nee, keine ahnung, was da bei dir los ist.

                    Kommentar


                    • #11
                      OK!

                      Alles klar!
                      Es geht auch bei mir...

                      Allerdings habe ich eines festgestellt. Wenn ich Norton Personal Firwall aktiviert habe, scheint irgendwas nicht zu funktionieren mit dem Script, das ich vorher eingesetzt habe. Habe mein altes nun mit dem von Dir geposteten ergänzt und siehe da, es läuft...

                      Danke für Deine tatkräftige Unterstützung!

                      Grüße aus Nürnberg
                      Mario
                      Mario Heiß IT-Services

                      Kommentar

                      Lädt...
                      X