[PHP] Datei Download

Dieses Thema im Forum "Webentwicklung" wurde erstellt von myth2806, 24. Februar 2007 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 24. Februar 2007
    Datei Download

    Hey leutz,

    also ich habe folgendes Problem. Ich würde gerne auf eine Seite einen Link einbauen mit dem man eine Datei irgendwelcher art herunterladen kann. Nun will ich aber zum Beispiel jenachdem welche IP den Link aufruft oder ob bestimmte Cookies gesetzt sind, ein andere Datei herunterladen lassen.
    Nun hatte ich gehofft, dass es mit folgendem, simplen Script schon erledigt wäre:

    PHP:
    <? php
        $array 
    = array();
        
    $array  file ( "irgendeinedatei.dat" );
        for (
    $i  0 $i  count ( $array );  $i ++)
        {
            echo 
    $array [ $i ];
        }
    ?>
    joa nur leider bekommt man dann den Dateiinhalt auf dem Monitor ausgegeben und nicht zum Download angeboten. Ich habe mir dann überlegt, dass der Browser dies vielleicht nur tut, wenn er die Dateiendung nicht kennt. ".php" ist ja durchaus bekannt. Eine möglichkeit sehe ich jetzt darin, in der apache Konfiguration ein Endungsalias von zB ".dat" auf ".php" zu legen aber ich hoffe jetzt einfach mal, dass das auch noch einfacher geht.

    Bin wie immer um jede Hilfe dankbar :]

    greez myth
     
  2. 24. Februar 2007
    AW: Datei Download

    Vielleicht statt:
    PHP:
    echo  $array [ $i ];
    einfach:
    PHP:
    echo  "<meta http-equiv=\"refresh\" content=\"5; URL=" . $array [ $i ]. "\">

    mfg,
    m00pd00p
     
  3. 24. Februar 2007
    AW: Datei Download

    danke schon mal für die Hilfe aber wenn ich dass jetzt hier so einbaue:

    PHP:
    <? php
        $array 
    = array();
        
    $array  file ( "referate/" . $_GET [ 'id' ]. ".ref" );
        for (
    $i  0 $i  count ( $array );  $i ++)
        {
            echo 
    "<meta http-equiv=\"refresh\" content=\"5; URL=" . $array [ $i ]. "\">" ;
        }
    ?>
    bekomm ich nur einen kleinen dateiaussschnitt zu sehen und ansonsten passiert nichts.

    greez myth
     
  4. 24. Februar 2007
    AW: Datei Download

    ok ich weiß nicht ob ich dich richtig verstehe aber vll hilft dir das weiter:

    header("Location: http://www.example.com/");

    mit so einem befehl leitest du die seite am einfachsten von php aus um
     
  5. 25. Februar 2007
    AW: Datei Download

    Einfach per Header n Download erzwingen.

    PHP:
    <? php
    $File 
    'Datei.dat' ;

    // Damit nich ausm Cache gelesen wird..
    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" );  // HTTP/1.1
    header ( "Pragma: no-cache" );
    header ( "Cache-Control: post-check=0, pre-check=0" false );

    // Force Download -> Download erzwingen
    header ( "Content-type: application/force-download" );
    header ( "Content-Disposition: filename= $File " );
    header ( "Content-Description: Downloaded File" );

    // Datei ausgeben
    $Datei  file ( $File );
    foreach(
    $Datei  as  $Line ) { echo  $Line ; }
    // ---

    ?>
     
  6. 25. Februar 2007
    AW: Datei Download

    Wunderbar so muss das sein

    thx an dich und auch an xPliCt aber das war nur zur hälfte das, was ich gesucht habe XD

    greez myth

    //closed
     
  7. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.