Dokumente in Word öffnen

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

  • Dokumente in Word öffnen

    Habe folgendes Problem:

    Möchte bei uns im Intranet über den Browser Dateien in Word öffnen. Das hab ich mit folgendem Code bereits realisiert:
    PHP-Code:
    header('Content-type: application/msword');
    header('Content-Disposition: attachment; filename=test.doc"');
    readfile("test.doc"); 
    Das funktioniert soweit schon wunderbar. Allerdings passen mir zwei Dinge nicht.

    Zum Einen liegt die Datei test.doc derzeit im selben Verzeichnis wie mein Script. Später werden die doc-Dateien jedoch nicht im selben Verzeichnis liegen. Deshalb hab ich das wie folgt versucht.

    PHP-Code:
    readfile("T:\Verzeichnis\test.doc"); 
    Da bekomm ich jedoch folgende Fehlermeldung (angezeigt in einem leeren Worddokument):

    <br />
    <b>Warning</b>: readfile(T:\Verzeichnis\test.doc): failed to open stream: Datei oder Verzeichnis nicht gefunden in <b>/usr4/intranet/test.php</b> on line <b>12</b><br />

    Außerdem nennt er die Datei in Word nicht test.doc sondern test[1].doc und beim Speichern schlägt er mir ein temporäres Verzeichnis vor.

    Für mein Projekt wäre es jedoch sehr wichtig, dass die Datei den selben Namen bekommt (also test.doc) und beim Speichern im richtigen Verzeichnis landet (also in T:\Verzeichnis\test.doc).
    Das Genie überblickt das Chaos!

    Wer Rechtschreibfehler findet, darf sie behalten!

  • #2
    1:
    versuch mal readfile("Verzeichnis/test.doc");
    Wo genau liegt denn die datei jetzt?

    2:
    soweit ich das beurteilen kann, hast du den Dateinamen korrekt angegeben. Könnte sein, dass die [1] von deinem Browser angehöngt wird. IE?
    Auf den Zielpfad hast du keinen Einfluss. das lässt du mal schön den User entscheiden.

    Kommentar


    • #3
      Zu 1:

      Also das mit readfile("T:/Verzeichnis/test.doc"); haut leider auch nicht hin. Vermute mal das liegt daran, dass das Verzeichnis außerhalb des Root-Verzeichnisses liegt.
      Was hab ich da denn noch für Alternativen?

      Zu 2:

      Die [1] setzt wohl wirklich mein IE dazu, kann ich das nicht unterdrücken? Problem ist nämlich, dass bei uns alle mit dem IE arbeiten.
      Das mit dem Zielpfad ist keine gute Idee, weil das das Ganze schon wieder unbrauchbar macht. Denn wenn der User immer noch den Pfad suchen muss, dann bringt mir der ganze Vorteil des schnellen aufrufens nichts. Weil die Zeit dann wieder beim Speichern draufgeht. Davon abgesehen fehlen die Informationen, wenn vergessen wird, das richtige Verzeichnis auszuwählen. Denn wenn in der Originaldatei nichts geändert wurde, weil die Änderungen im termporären Verzeichnis abgespeichert sind.
      Das Genie überblickt das Chaos!

      Wer Rechtschreibfehler findet, darf sie behalten!

      Kommentar


      • #4
        1:
        wo liegt die doc und wo das script? liegt es außerhalb des document-root? dann hast du auch probleme darauf zuzugreifen.

        2:
        dann lassen wir das ganze doch

        Kommentar


        • #5
          Zu 1:

          Ja, die doc liegt außerhalb des document-Root.

          Zu 2:

          Nein, ich brauch das doch.
          Das Genie überblickt das Chaos!

          Wer Rechtschreibfehler findet, darf sie behalten!

          Kommentar


          • #6
            ich hab nen filedownload gebastelt und nutze auch readfile. also bei mir funktioniert die readfile methode ganz gut.

            allerdings gabs bei mir probleme mitm pfad, daher sieht es bei mir so aus (auch außerhalb des doc roots)

            PHP-Code:
            $Path "C:/downloads/file.zip";
            readfile($Path); 
            aber mal ne frage ist
            "T:" zufällig ein Netzlaufwerk oder ne andere Festplatte?
            soweit ich weiß funktioniert readfile nur wenn die dateien auf dem selben filesystem liegen, ob mit anderem Filesystem auch schon andere Festplatten drunter fallen, weiß ich leider nicht genau. aber wäre zumindest meine vermutung

            Kommentar


            • #7
              Also ich hab's mal mit deiner Methode probiert, aber auch das funktioniert nicht. T: ist eine Partition auf unserem Server. Hmm, aber ich hab die Datei grad mal auf C: gelegt und versucht dort aufzurufen, das hat auch nicht funktioniert.
              Das Genie überblickt das Chaos!

              Wer Rechtschreibfehler findet, darf sie behalten!

              Kommentar

              Lädt...
              X