Apache Server und andere Verzeichnisse

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

  • #16
    PHP-Code:
    <?php 
    function send_file($name) { 
      
    $status FALSE
      
    $path "c:/server/verwaltung/".$name
      if (!
    is_file($path) or connection_status()!=0) return(FALSE); 
      
    header("Expires: ".gmdate("D, d M Y H:i:s"mktime(date("H")+2date("i"), 
                  
    date("s"), date("m"), date("d"), date("Y")))." GMT"); 
      
    header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); 
      
    header("Cache-Control: no-cache, must-revalidate"); 
      
    header("Pragma: no-cache"); 
      
    header("Content-type: application/msword\n"); 
      
    header("Content-Disposition: filename=\"".$name."\"\n"); 
      
    header("Content-length: ".(filesize($path))."\n"); 
        if (
    $file fopen($path'rb')) {
        
    $data fread($filefilesize($path));
        
    fclose($file);
        echo 
    $data;
        }
      

    ?>

    <?php 
    if (!send_file("Dienstauftrag.doc")) { 
    die (
    "file transfer failed"); 
    // either the file transfer was incomplete 
    // or the file was not found 
    } else { 
    // the download was a success 
    // log, or do whatever else 

    ?>

    Kommentar


    • #17
      du hast ja die anderen header(...) immer noch drin im Prinzip hast du nichts geändert

      Kommentar


      • #18
        Ok, hab jetzt die anderen HEader auch alle entfernt, leider noch immer kein brauchbarer Download. Mit Text-dateien funktioniert es wundervoll, blos nicht mit Word-Dokumenten.

        Kommentar


        • #19
          Hm ... das ist aber komisch ... bei mir funz ohne Probleme, kann man online sehen?

          Kommentar


          • #20
            Nein, leider nicht online, da das in einem privaten Netzwerk lauft.
            Aber ich kann die sagen, dass das Packet xampp auf einem Windows 2003 Server lauft und ich versuche mit winXP sowie mit Fedora Core 3 als client es leider zu keiner befriedigenden Lösung kommt. Als Testumgebung verwende ich Internet Explorer 6 (mit SP2), Mozilla Firefox 1.0 und Opera 7.54.
            Leider kommt bei all diesen Browsern nur unlesbarer ASCII-Code heraus, der nicht binär übertragen wird.

            Kommentar


            • #21
              steht denn am Anfang dieser ASCII-Datei irgendwas lesbares? wenn ja, enthält diese Information u.U. auch den Namen deiner php-Datei? wenn ja, poste kurzmal diese Info.

              Kommentar


              • #22
                Nein, da steht nichts vergleichbares. Aber ganz unten steht: file transfer failed. Das dürfte eindeutig von meinem Script kommen.

                Kommentar


                • #23
                  Original geschrieben von ayin
                  Aber ganz unten steht: file transfer failed. Das dürfte eindeutig von meinem Script kommen.
                  und DAS zerstört das Dokument. Also finde den Fehler, dann wird's schon funz

                  btw: genau wie ich vermutet habe, nämlich, dass dein Script Fehler hat und der Parser die Fehlermeldung mit ausgibt.

                  Kommentar


                  • #24
                    Ja, so funktioniert der Download nun.
                    Jetzt nur noch eine letzte Frage:

                    Wie mache ich das mit dem Aufruf der sendfile.php?

                    Wenn ich den Link so schreibe:
                    Code:
                    <a href="sendfile.php?dokument.doc">dokument.doc</a>
                    , dann komme ich zu keinem ergebnis.

                    Kommentar


                    • #25
                      Du
                      - holst per $_GET das, was in der URL steht.
                      - prüfst, ob die Datei (noch) existiert,
                      - dann die Funktion aufrufen

                      Kommentar


                      • #26
                        Jetzt hauts hin. Danke dir. Ich hoffe ich war dir nicht allzu lästig.

                        Kommentar


                        • #27
                          das wirst du bestimmt dann merken

                          Kommentar

                          Lädt...
                          X