Download - Ja ich weiss...

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

  • Download - Ja ich weiss...

    Hallo!

    Eins gleich vorweg: Ja, ich habe gesucht, ich habe auch einiges gefunden aber mein Script geht trotzdem nicht...

    Folgendes Problem. Ich habe ein PHP-Script, in dem ich einen Link ausgebe. Wenn man auf diesen Link klickt, öffnet sich ein kleines Fenster in dem folgendes PHP-Script namens dl.php dann abläuft:

    PHP-Code:

        session_start
    ();
        
        
    $dl=$_SESSION['dl'];
        
    $id=$_GET[id];
        
        if(
    $dl!="x"){
            echo 
    "Keine Berechtigung zum Download!";
            exit;
        }
        
        include(
    "../inc/db_var.php");
        include(
    "../inc/db_class.php");
        include(
    "../inc/db_zugriff.php");
        
        
    $download=$db_zugriff->query_first("select * from ph_downloads where d_id=$id");
        
        
    $disp="Content-Disposition: attachment; filename=../".$download[d_pfad];
        
    header("Content-type: application/pdf");
        
    header($disp);
        
    readfile('../'.$download[d_pfad]); 
    So. In $download[d_pfad] steht der Pfad zur Datei. Die Variable ist auch gefüllt und da steht z.B. "dl/datei1.pdf" drin. Wenn das Script gestartet wird, wird auch schön der Speichern-Dialog aufgerufen aber wenn ich Speichern drücke, bekomme ich folgende Fehlermeldung:

    "dl.php?id=6 von rechner kann nicht übertragen werden. Die Internetseite konnte nicht geöffnet werden. Sie ist entweder nicht verfügbar oder konnte nicht gefunden werden......."

    Ich will ja aber dl.php gar nicht downloaden sondern die PDF-Datei aus meiner DB. Weiss einer was das soll?

    Danke!

    Gruss

    Yezariel
    Zuletzt geändert von yezariel; 13.02.2003, 15:20.
    mens agitat molem

  • #2
    Hat keine 'ne Idee???
    mens agitat molem

    Kommentar


    • #3
      Schau mal hier nach
      http://www.dclp-faq.de/q/q-datei-download.html
      mfg
      Günni


      Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
      Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
      Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
      City-Tiger - Online durch die Straßen tigern...

      Kommentar


      • #4
        Hallo!

        Danke für die Antwort, aber den Link kannte ich schon.

        Mein Problem ist wohl die Session! Ich hab jetzt die Session mal weggelassen und dann funktioniert es. Fast... Das einzige Problem ist jetzt noch der Dateiname des PDF's. Hier mein neues Script:

        PHP-Code:
            $id=$_GET[id];
            
            include(
        "../inc/db_var.php");
            include(
        "../inc/db_class.php");
            include(
        "../inc/db_zugriff.php");
            
            
        $id-=5;
            
        $download=$db_zugriff->query_first("select * from ph_downloads where d_id=$id");
            
            
        header("Content-type: application/pdf");
            
        header("Content-Disposition: attachment; filename=".$download[d_pfad]);
            
        readfile('../'.$download[d_pfad]); 
        Die Datei wird jetzt auf der Festplatte gespeichert aber als Name wird der Name meines PHP-Scripts (dl.pdf) anstatt der Name der PDF-Datei ausgegeben. Hat jemand eine Ahnung was ich falsch mache?

        Danke!

        Gruss

        Yezariel!
        mens agitat molem

        Kommentar


        • #5
          PHP-Code:
          header("Content-Disposition: attachment; filename=\"Dateiname.pdf\""); 
          mfg
          Günni


          Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
          Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
          Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
          City-Tiger - Online durch die Straßen tigern...

          Kommentar


          • #6
            Hi!

            Nee, das war's auch nicht aber deine Antwort hat mich auf den Fehler gebracht. In meiner Variable war der Pfad zum PDF gespeichert und das scheint nicht zu funktionieren. Ich habe jetzt noch ein Tabellenfeld angelegt in dem nur der Dateiname steht und hänge das dann an den header-Befehl dran und dann geht's!! JIPIEH!

            VIELEN DANK!!

            Hier nochmal für alle die's interessiert das Script:

            PHP-Code:
                $id=$_GET[id];
                
                
            $download=$db_zugriff->query_first("select * from ph_downloads where d_id=$id");
                
                
            header("Content-type: application/pdf");
                
            header("Content-Disposition: attachment; filename=$download[d_datei]");
                
            readfile('../'.$download[d_pfad]); 
            Gruss

            Yezariel
            mens agitat molem

            Kommentar

            Lädt...
            X