downloadscript in wordpress einfügen

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

  • downloadscript in wordpress einfügen

    Hallo Leute,
    Folgender Sachverhalt beschäftigt mich nun schon seit Tagen:
    Ich möchte gern in meinem Wordpress Blog ein Downloadscript einfügen, so dass wenn Leute z.B. "index?id=zahl&page_id=5" aufrufen, zuerst die Seite aufgebau wird und dann der Download mit der id=zahl gestartet wird. Ich habe in der index.php bereits ein ob_start und ein ob_end_flush eingebaut und danach das Downloadscript, das wie folgt aussieht:

    PHP-Code:
    <?php
    $alt 
    file_get_contents("datei.txt");
    $referer $_SERVER["HTTP_REFERER"];
    if(empty(
    $alt)){
        if(empty(
    $referer)){
          
    $neu $alt;
        } else {
          
    $neu $referer;
        }
    } else {
        if(empty(
    $referer)){
          
    $neu $alt;
        } else {
          
    $neu $alt."\r\n".$referer;
        }
    }
    file_put_contents("datei.txt"$neu);
    //Diese Funktion schreibt die Anzahl der Downloads in eine Datei
    function write_dl_counter($identifier)
    {
       
    //Hier erstmal die Datei öffnen
       
    $dump "dls/counter";
       
    $inhalt file_get_contents($dump);

       
    //Nun splitten nach Zeile
       
    $out explode("\r\n",$inhalt);

       
    //Jetzt jede Zeile durchgehen ... und wiederrum exploden
       
    foreach($out as $output)
       {

             
    //Jetzt splitten nach identifier
             
    $output_cache explode(':',$output);

             if(
    $output_cache[0] == $identifier)
             {

               
    //Nun den zweiten output_cache bearbeiten und dann als Zeile wieder zurückgeben
               
    $neuerwert $output_cache[1] + 1;
               
    $output $identifier.':'.$neuerwert;

               
    $bearbeitet TRUE;

             }

                
    //Hier werden alle Zeilen wieder in ein array gespeichert
                
    $zeilen[] = $output;

       }


       
    //Wenn keine Zeile bearbeitet wurde wird einfach neuer Eintrag gemacht
       
    if(!$bearbeitet)
       {


          
    $zeilen[] = $identifier.':1';


       }


       
    //Nun alle Zeilen wieder in einen String zurueck und dann per fopen in Datei schreiben
       
    $datei_inhalt implode("\r\n",$zeilen);

       
    $handle fopen($dumpw);

       
    fwrite($handle$datei_inhalt);

       
    fclose($handle);

    }

    //Hier wird die id geholt
    $id $_GET['id'];

    //Hier wird der Download Pfad festgelegt
    $path "dls/";

    //Hier wird dem Download eine id zugeordnet
    $dls[] = "ibors-gb.zip";
    $dls[] = "phphitsmod_by_ibor.zip";
    $dls[] = "sec_paper_one.pdf";
    $dls[] = "stealer.zip";
    $dls[] = "jpg_cleaner.zip";
    $dls[] = "email_ausleser.zip";
    $dls[] = "sec_paper_two.pdf";

    //Wenn Download vorhanden ist wird heruntergeladen und counter eintrag gemacht
    if(array_key_exists($id$dls))
    {

    write_dl_counter($id);

    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT");
    header("Content-Type: text/plain");
    header("Content-Disposition: attachment; filename = ".str_replace('1','',$dls[$id]));
    readfile($path.''.$dls[$id]);

    }

    ?>
    eingebaut, jedoch ohne Erfolg.
    Ich hoffe ihr könnt mir helfen- Vielen Dank schonmal im Vorraus!

  • #2
    Was ist denn der jetzige Status? Was passiert wenn du das Skript ausführst?
    zum anderen möchtest du anscheinend zip und pdfs runterladen, die garantiert nicht vom Typ text/plain sind, da musst du dann schon die richtigen Header senden

    Kommentar


    • #3
      habe den code entfernt (hat mit den headern nichts zu tun)
      Zuletzt geändert von subabrain; 27.12.2008, 10:40.

      Kommentar


      • #4
        Brich bitte die Zeilen um! Da wird man ja verrückt.
        Und wie krel schon sagt, etwas mehr Fehlerbeschreibung mußt Du schon liefern als "Funktioniert nicht".

        Kommentar


        • #5
          problem gelöst

          Danke für eure Hilfe,
          aber ich habe das Problem schon gelöst, indem ich die downloaddatei vor allen anderen includeten dateien die auch ausgaben machen eingebunden habe.

          Kommentar

          Lädt...
          X