Zeige Ergebnis 1 bis 24 von 24
  1. #1
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0

    wie einrichten dass dl' nur mit registrierung ablaufen ?

    meine hp: germanlostsouls.de

    auf der seite gibbets eben einiges zum downloaden, ich möchte es aber gerne einrichten dass sich nur noch leute dies alles unterladen können die im forum registriert sind, wie stelle ich das am besten an ?


    plz help


  2. #2
    Benutzerbild von zzz
    Registriert seit
    Apr 2000
    Beiträge
    6.281
    Likes
    0
    Code:
    if ($registriert) {[br]  header('Content-type: application/zip');[br]  header('Content-Disposition: attachment; filename="name_der_datei_bei_download.zip"');[br]  readfile('geschuetztes_verzeichnis\datei.zip');[br]}[br]else[br]  echo "403";[br]

  3. #3
    greenthumb
    Gast
    hmm ist auch ne wissenschaft für sich - schau mal unter http://www.php.net/header bei den usercomments :/

    auf einer der sites die ich betreue verhaun wir ebooks und da ist es ähnlich - bisher gabs keine variante die bei jedem gefunzt hat die neueste (bisher nicht bei den usern durchgefallen) ist die hier:

    Code:
    header('Content-Type: application/octet-stream; name=".$filename."');			
    header('Content-Type: application/octetstream; name=".$filename."');			
    header("Content-Disposition: attachment; filename=".$filename);
    das problem is halt dass man nicht einfach sagen kann: alte browser, nicht standartisierte browser fallen ebend durchs raster - nein es muss auf jeden scheiss abgestimmt sein.

    dann hab ich noch gehört das sicherste sei es via MOD_rewrite das ganz so zu kaschieren das der browser in jedem falle glaubt ein file zu ziehen. etwaige session variablen musste dann in einer gefakten ordnerstruktur unterbringen

    z.b.

    anstatt download.php?sid=sdjw387sdj&file=4 dann download/sdjw387sdj/4/dateiname.zip

  4. #4
    edgewalker
    Gast
    Du brauchst garkein mod_rewrite.

    Wenn die URL so aussieht: /foo/bar/download.php/dateiname.zip?sid=deadc0de, dann findet ruft der Server, falls /foo/bar/download.php/dateiname.zip nicht als echter Pfad existiert, aber ein Skript namens /foo/bar/download.php schon, ebendieses Skript auf und übergibt /dateiname.zip als Parameter in der Umgebungsvariablen PATH_INFO (die heisst in PHP dann auch so).

    Du musst nur aufpassen, ob dir jemand Verzeichnisnamen in $PATH_INFO unterzuschieben versucht.

    Danach kannst du dir Tricks mit dem Content-Disposition-Header und dem ;name= im Content-Type-Header auch sparen.

  5. #5
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0
    ähm kann mir das mal jm genauer erklären ?


    icq: 205768770

  6. #6
    edgewalker
    Gast
    Per ICQ grundsätzlich nicht -- es gibt keine Extrawürste. Erstens haben davon andere ausser dir nichts (c.f. "Suchfunktion"), und ausserdem korrigiert da mich oder wen auch immer niemand, wenn dir Müll erzählt wird.

    Du kannst gerne hier fragen, was du nicht verstehst.

  7. #7
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0
    es ist einiges was ich da nit verstehe und um alles zu klären dauert es so zu lange, also wer ahnung und mitleid hat möge mich doch bitte mal ansprechen, gibt auch ne belohnung in forum von 50 mb speicherplatz für min 4 monate...

  8. #8
    edgewalker
    Gast
    Original erstellt von [GLS]-Sarge_bv
    belohnung in forum von 50 mb speicherplatz für min 4 monate...

  9. #9
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0
    edgewalter da siehtse wie wichtige mir das wäre, och man komm per icq würde es wirklich schneller gehen :/

  10. #10
    edgewalker
    Gast
    In der Zwischenzeit hätten wir die Fragen schon längst geklärt.

    Vielleicht sagst du erstmal, wo das Problem grundsätzlich liegt. Hast du überhaupt schonmal was mit PHP gemacht? Wie gut kennst du dich mit den Sachen aus?

    PS.: bitte edgewalker..

  11. #11
    greenthumb
    Gast
    also mod_rewrite ist jawohl 100mal besser als dieser path scheiss! wie schaut denn das aus! tztztz

  12. #12
    edgewalker
    Gast
    Kostet dich halt eine interne Umleitung im Apache, die sonst nicht nötig ist.

    Du kannst das Skript auch einfach nur download ohne Endung nennen und dann etwa per <Files>-Abschnitt in der Apache-Config oder einer .htaccess dafür sorgen, dass Apache es trotzdem als PHP-Skript betrachtet.

    Dann musst du dich nicht über dieses schlimme, schlimme .php in der URL aufregen. Wo kämen wir denn da hin, wenn jeder sowas in der URL hätte.

  13. #13
    greenthumb
    Gast
    edge nix für ungut aber manchmal möchte ich dir sagen:

    klappe zu klugscheisser

    wenn du etwas themennaher mitposten könntest und nich so sehr hochnäsig wäre es ein echter segen

  14. #14
    edgewalker
    Gast
    Ich sehe nicht, wo ich hier themenfern gepostet habe, genausowenig wie im RSS-Thread. Offensichtlich interpretierst du das anders, weil du nicht besonders auf Korrektheit bedacht bist, solange es zu funktionieren scheint, ich dagegen obsessiv.

    Dass es mit mod_rewrite geht, habe ich im Übrigen nicht bestritten; ich kann dir auch genau erzählen, wie.

    Nur geht es auch anders, und meiner Meinung nach ist anders hier besser, sodass ich die Alternative auch einbringe. Wenn du dich dadurch vor den Kopf gestossen fühlst und dich so äusserst, kannst du erwarten, dass ich ebenso darauf reagieren werden. Wenn du vielleicht an und an ein echtes Gegenargument anbringst, anstatt nur permanent die Schiene " so analfixiert muss man nicht sein" zu fahren, würdest du vielleicht auch mal die Überraschung erleben, dass ich einen konträren Punkt akzeptiere.

    Danke.

  15. #15
    Benutzerbild von cro4ky
    Registriert seit
    Dez 2000
    Beiträge
    7.135
    Likes
    0
    Original erstellt von edgewalker
    Sei froh, dass er nicht mit Bouncern gedroht hat!

    [yellow]RFL[/yellow]

  16. #16
    greenthumb
    Gast
    edge, süsser! dein ton macht micht oftmals aggressiv - und dann klingt es bei dir nur in 5% der fälle nach einer lösung - der rest klingt nach: ja und dann kann man sich noch die kniescheibe aufhebeln und apfelmus reinfüllen.

    und die vermeindliche obsessive korrektheit schiesst bei dir schonmal über den einen oder anderen user hinaus.

  17. #17
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0
    ok, jetzt mal wieder zum thema. also jo ich habe grundkentnisse in php und html, mehr nit, also bitte alles ausführlich erklären. aber wir müssten uns ja erstmal auf einen weg einigen, auf den von edgewwalker oder greenthumb, und ich hab ja sowieso ka welcher besser sein sollte. möglichst einfach wenns geht und so dass es in allen explorern funzt. cu

  18. #18
    Benutzerbild von ST_Sir_H.C.
    Registriert seit
    Jun 2001
    Ort
    nuertingen.de
    Beiträge
    10.117
    Likes
    0
    Original erstellt von [GLS]-Sarge_bv
    ok, jetzt mal wieder zum thema. also jo ich habe grundkentnisse in php und html, mehr nit, also bitte alles ausführlich erklären. aber wir müssten uns ja erstmal auf einen weg einigen, auf den von edgewwalker oder greenthumb, und ich hab ja sowieso ka welcher besser sein sollte. möglichst einfach wenns geht und so dass es in allen explorern funzt. cu
    sry - ich kanns mir nit verkneifen

    aber ob du den ie für windows oder mac oder wg. mir auch für linux nimmst wird wenig unterschied machen ;[red][/red])

    explorer != browser => explorer != gut => gut = browser

    Setz ein Zeichen: Deine Apple Remote in deiner Sig!
    "[…] everyone gets the ‘Ultimate’ version, packed with all the new innovative features, for just $129."
    Steve Jobs, Apple’s CEO

  19. #19
    greenthumb
    Gast
    Original erstellt von [GLS]-Sarge_bv
    ok, jetzt mal wieder zum thema. also jo ich habe grundkentnisse in php und html, mehr nit, also bitte alles ausführlich erklären. aber wir müssten uns ja erstmal auf einen weg einigen, auf den von edgewwalker oder greenthumb, und ich hab ja sowieso ka welcher besser sein sollte. möglichst einfach wenns geht und so dass es in allen explorern funzt. cu
    ok, der beste weg ist sicher der bei dem der browser eine routine benutzt die er 100% kann. Das heisst wir kaschieren das script (welches wir für die download-reg brauchen).

    Das geht auf 2 arten, mit dem mod_rewrite und auch mit edges lösung über den dateinamen als paramter - für den browser ist es das selbe - ein simpler download. somit wäre schonmal das funktionieren seitens des browsers sichergestellt.

    kosmetisch ist mod_rewrite besser und in fällen wo edges weg vom php nicht unterstützt wird (keine ahnung ob das standard ist oder nicht und seit wann das in php geht) auch der einzige.

    ich mag dir jetzt auch keine fertige lösung präsentieren da keine zeit. lies bei http://www.php.net/header die user comments sowie http://httpd.apache.org/docs/mod/mod_rewrite.html da findest du im prinzip alles was du brauchst - und nich mit der einstellung rangehen 'kann ich ja eh nich' weil dann wirds auch nichts.

    gtb.

  20. #20
    edgewalker
    Gast
    PATH_INFO gibt es seit Ewigen Zeiten, lange bevor PHP erfunden wurde. Soweit ich weiss, lässt sich dieses Feature in der PHP-Konfiguration für die Nutzung durch PHP-Skripte auch abschalten, per Default ist es aber an.

    Was schöner ist, darüber können wir uns jetzt lange streiten -- mit PATH_INFO muss man immerhin weder die mod_rewrite-Syntax lernen, noch dem Server zusätzliche Arbeit aufbrummen.

  21. #21
    Benutzerbild von netro
    Registriert seit
    Mai 2003
    Beiträge
    1.172
    Likes
    0
    finde bei php.net/header nichts irgendiwe .....




    help plz


    ps: ist es überhaupt möglich mit dem wbboard das so hinzubekommen

  22. #22
    edgewalker
    Gast
    Klar. Du musst halt den entsprechenden Code, der das Login-Cookie prüft, aus den Quellen deines Boardskripts herausschneiden.

  23. #23
    Original erstellt von edgewalker
    Du brauchst garkein mod_rewrite.

    Wenn die URL so aussieht: /foo/bar/download.php/dateiname.zip?sid=deadc0de, dann findet ruft der Server, falls /foo/bar/download.php/dateiname.zip nicht als echter Pfad existiert, aber ein Skript namens /foo/bar/download.php schon, ebendieses Skript auf und übergibt /dateiname.zip als Parameter in der Umgebungsvariablen PATH_INFO (die heisst in PHP dann auch so).

    Du musst nur aufpassen, ob dir jemand Verzeichnisnamen in $PATH_INFO unterzuschieben versucht.

    [yellow]Danach kannst du dir Tricks mit dem Content-Disposition-Header und dem ;name= im Content-Type-Header auch sparen.[/yellow]
    edit: Habs verstanden, 'tschuldigung fürs Threadhochholen.

    Original erstellt von netro
    [yellow]edgewalter[/yellow] da siehtse wie wichtige mir das wäre, och man komm per icq würde es wirklich schneller gehen :/


    Are you kidding? I've got a reputation to live up to!
    Man if my show doesn't make people vomit, and have an erection at the same time,
    then I would let my audience down!


    Dexter; Staffel 3 Episode 10; ∼10:56

  24. #24
    -diggity-
    Gast
    Original erstellt von netro
    edgewalter da siehtse wie wichtige mir das wäre, och man komm per icq würde es wirklich schneller gehen :/
    Sry, aber

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
  •