micho: Wie generiertes file downloaden?

Ich will in einer kleinen php Anwendung einen Link bereitstellen, der beim Anklicken im Browser den "Datei speichern Dialog" öffnet und das mit php zu generierende file speichert.

Ich habe zwei Probleme:

  1. ich bekomme den Inhalt nur im Browser dargestellt, wie zwinge ich den browser zum anzeigen des Dialoges
  2. ich gebe nur reine Daten aus, trotzdem kommt in Browser
      <HTML>
      <head>
      </head>
      <body>
      MEINE DATEN
      </body>
      </HTML>

an, macht das der Apache?, wie kann ich das verhindern?

DAnke.

  1. Ich habe den Link mit
    type="text/csv"
    ergänzet.

    Im browser steht bei "text/csv" Aktion spechern.
    Allerfings orientiert sich der Browser wohl nur an der extension, die ist php und nicht am typ des Link

    1. Hello,

      Ich habe den Link mit
      type="text/csv"
      ergänzet.

      Im browser steht bei "text/csv" Aktion spechern.
      Allerfings orientiert sich der Browser wohl nur an der extension, die ist php und nicht am typ des

      Fem Browser ist fie Extention fer Ressource egal. Fie ist erst interessant dür fas ActiveX-Modul von Windows, fas darüber seine Assoziation mit dem "zuständigen" Programm herstellt.

      Link
      Harzliche Grüße vom Berg
      http://bergpost.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)

  2. Du kannst in der php-datei folgende Funktion ganz am Anfang verwenden:
    header(Content-type: text/octetstream);
    Damit wird der MIME-type als "unbekannt" deklariert´und der Browser(zumindest IE) öffnet den speichern unter-Dialog.

    Ich will in einer kleinen php Anwendung einen Link bereitstellen, der beim Anklicken im Browser den "Datei speichern Dialog" öffnet und das mit php zu generierende file speichert.

    Ich habe zwei Probleme:

    1. ich bekomme den Inhalt nur im Browser dargestellt, wie zwinge ich den browser zum anzeigen des Dialoges
    2. ich gebe nur reine Daten aus, trotzdem kommt in Browser
        <HTML>
        <head>
        </head>
        <body>
        MEINE DATEN
        </body>
        </HTML>

    an, macht das der Apache?, wie kann ich das verhindern?

    Ja, das macht der Apache. Aber über php hast kannst du ja im Header den MIME-type verändern(mit der oben stehenden PHP-Funktion zumindest). Falls du es komplizierter willst, solltest du dir mal .htacces anschauen. Aber wie oben geht es auch.

    DAnke.

    Bitte.

    1. Du kannst in der php-datei folgende Funktion ganz am Anfang verwenden:
      header(Content-type: text/octetstream);

      Tausend Dank-Problem gelöst!