Heyho,
ich wollte mal fragen wie man Dateien vom Webspace runterladen lassen kann(also nicht via FTP, sondern dass man auf einen Link klickt und die Datei sich dann runterlädt).
Muss man das in PHP machen?
Sorry, aber das ist meine erste HP
Heyho,
ich wollte mal fragen wie man Dateien vom Webspace runterladen lassen kann(also nicht via FTP, sondern dass man auf einen Link klickt und die Datei sich dann runterlädt).
Muss man das in PHP machen?
Sorry, aber das ist meine erste HP
Einfach auf die Datei verlinken
Mfg
Hi,
wenns deine erste HP ist dann bitte schön…
Statt xxx kommt dein Link rein
und statt yyy kannst ne beschreibung machen z.b.
Hier klicken oder so
z.b.
würde dann so aussehn
Xampp auf Sourceforge runterladen (Klick)
lg
Danke, klappt super
Links kenn ich schon, nur das mit den Download war mir neu
Achso…
Dachte du bist dir noch nicht so sicher mit HTML und Link (wegen dem meine erste HP) und dann hab ich mir gedacht ich schreibs einfach mal dazu ^^auch wenn du schon eine antwort hast …
Kenn des noch von mir wie ich angefangen hab da haben auch öfters leute gesagt wie des geht und ich habs nicht verstanden … mit nem beispiel dann aber schon^^…
Naja SORRY^^
War nicht böse gemeint
lg flo
falls eine datei nicht direkt zum download angeboten wird, kann man das auch so machen:
<?php $file ='datei.xzy'; $filename = basename($file); $filesize = filesize($file); header('Content-Type: application/force-download'); header('Content-Disposition: attachment; filename=' . $filename); header('Content-Length:' . $filesize); readfile($file); ?>Ryon_ ich denke net das es killjoysoftware falsch verstanden hat
Eines müsst ihr immer bedenken, das hier ist ein Forum und daher sind die Antworten nicht nur für einen sondern für alle die eventuell das selbe Problem haben
Trifft hier zwar nicht zu dennoch sag ichs: darum sind auch Antworten wie: „nutze Google“ schlecht, denn mir ist es schon wer weiß wie oft passiert das ich via Google gesucht hab und dann bei so nem Beitrag gelandet bin^^ Man ist daher, selbst wenns eigl. blöd ist, gezwungen vernünftig zu Antworten da man sonst mehr behindert als der Fragensteller [size=85](wobei der es natürlich verursacht hat^^)[/size] und eben möglichst Global beantworten so das es jeder versteht auch wenn kein richtiges Vorwissen besteht. Im Prinzip eben nen kompletten Wiki Artikel
@lenz
joa das wäre dann ne PHP Lösung… wobei mit .htaccess sowas auch gehen sollte.
Bei .zip;.rar;.7z;.exe etc. aber uninteressant… nur bei .php;.html;.txt;.log;.xml [size=85](allgemein Text Dateien)[/size] wiederum interessant, eben alles was der Browser selber Interpretieren kann. [size=85](bei allem anderen bietet ers eben zum DL an)[/size]
wenn dus schon erwähnst - wie sähe das denn dann mit php aus?
ich habe nämlich einen ordner mit mehreren dokumenten, die zum download gedacht sind, habe allerdings auch genau dieses problem^^ die php-lösung war mir bekannt, aber htaccess finde ich unheimlich schwer zu begreifen…
wobei sich das bei mir natürlich anbieten würde, weil ich die dann wunderbar in den ordner mit den downloads legen könnte und dann einfach für alles gelten lasse könnte.
reicht in der .htaccess zum erzwungenen DL nicht einfach ein:
AddType application/octet-stream .avi .avi .pdf .xls .jpg
(je nach dateitypen natuerlich anpassen) ?
d.h für alle dateitypen einfach .* oder?
probiers aus
das obige ist auch nur das ergebnis einer kurzrecherche, da es so kompliziert klang und es mich interessierte.
in viewtopic.php?f=10&t=13553&start=0 gehts auch um die php loesung.
ich würd aber eher bei “application/force-download” bleiben da “application/octet-stream” für was anderes ist… [size=85](kp was genau, jedenfalls ist force-download schon für das was der Name schon sagt^^)[/size]
Und ja emil versuch einfach mal nen:
.htaccessAddType application/force-download .*
bzw. eventuell sogar nur * [size=85](weiß nicht ob sonst auch Dateien ohne Endung gehen würden)[/size]
Das die .htaccess demnach dann in den Download Ordner kommt brauch ich dir ja net sagen
Es gibt keinen MIME-Typ “application/force-download”. Der HTTP-Header für Downloads ist Content-Disposition, zb
Zusätzlich sollte man den wirklichen MIME-Typ angeben, der Browser kann dann wissen, welche Datei er gerade empfängt.
oO und wie sieht das dann aus? ich kann ja schlecht jeden dateinamen aufführen, da kommt ja immer wieder was hinzu / weg…
Das hab ich auch schon mal gehört, sollte aber trotzdem funktionieren, weil der browser, wenner nich weiß/versteht was kommt einfach mal download anbietet…
Das hab ich auch schon mal gehört, sollte aber trotzdem funktionieren, weil der browser, wenner nich weiß/versteht was kommt einfach mal download anbietet…[/quote]
Da würde ich trotzdem application/octet-stream vorziehen, weil es doch eher den wirklichen Typen wiederspiegelt.
Eine Möglichkeit den Header Content-Disposition mitzusenden wäre die Verwendung von mod_header, aber das ist hier wohl nicht installiert.
Mein Tipp wäre es einfach die Sache ruhen zu lassen und das Downloaden dem Besucher zu überlassen, der sollte wissen, wie er mit seinem Browser umzugehen hat.
… meine besucher haben im schnitt (!) windows 2000 mit dem IE 5, tut mir leid wenn ich das so offen sagen muss, aber ich trau denen nicht viel zu…
Da hier scheinbar keine reine .htaccess Lösung möglich ist [size=85](AddType versteht doch kein * bzw. nutzt es nicht als Wildcard und daher müsste man jede Datei einzeln hinzufügen)[/size], nimm doch einfach ne .htaccess + PHP Combi
.htaccessRewriteEngine On
RewriteCond %{REQUEST_URI} !\.DL.php$
RewriteRule ^(.*)$ .DL.php?f=$1
.DL.php<span class="syntaxdefault">ATTACHED</span>
[size=85](der Code sollte soweit sicher sein, …/ etc werden aufgelöst, es wird geprüft ob sich der DL im selben Verzeichnis wie das Script befindet und alle Dateien die mit einem Punkt “.” beginnen existieren nicht )[/size]
Du beachten ist dass das Script die neuste Technik voraussetzt [ul][li]PHP >= 5.3[/li]
[li]Halbwegs vernünftigen Browser,
da HTML 5 Doctype genutzt [size=85](auch wenn der Browser ihn net kennt, sollte er was darstellen^^)[/size]
und “data:” src [size=85](schlimmsten falls fehlt halt das Bild)[/size][/li][/ul]
PS: der Download teil ist von PHP.net übernommen, darum auch ob_start und flush was ich vermutlich weggelassen hätte sowie einige Header^^
Ich hätte eben auch application/force-download genommen. Obs existiert oder net ist mir egal denn es erfüllt seinen Zweck (wenn es Browser nicht doch kennen ) zumal application/octet-stream oft für .exe Files genutzt wird bzw. überwiegend size=85[/size] und es damit eigl. auch der falsche MIME ist^^
PPS: musste leider als Attachement da es zu groß war