Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Suche PHP Script für Datei Download

Suche PHP Script für Datei Download

rolfrein21.02.0914:16
Hallo,

kennt jemand ein PHP script oder ein einfaches CMS mit dem ich Videos (selbstgedreht und nichts illegales) über den Browser auf eine Seite stellen kann und nur registrierte Benutzer können sich das Video runterladen?

es sollte folgendes können:

1. einfacher upload der Files (DV Files bis 30´ also 6GB, eventuell zerteilt in 500mb blöcke) über den Browser
2. die Files kann man nur mit Zugangsdaten runterladen, auch über den Browser (also nicht im Browser zu sehen, soll nur download möglich sein)
3. es wird mitprotokoliert wer, welche IP, wann, sich was runtergeladen hat

Finde nichts einfaches, nur komplizierte CMS, die mir viel zuviel können

Roland
0

Kommentare

Mr. Krabs
Mr. Krabs21.02.0915:19
Ich kenne kein Skript/System, was dir nur diese Funktionalität bietet, aber je nachdem wie gut du dich mit PHP und Konsorten auskennst, ist so eine Seite flott geschrieben.
„Deux Strudel!“
0
void
void21.02.0915:28
ich zweifel etwas daran, dass http die richtige technologie ist, wenn du 6gb uppen willst...

aber sonst würde ich mich mr. krabs anschließen: selbst schreiben (sofern du die kenntnisse hast)
„Developer of the Day 11. Februar 2013“
0
Mr. Krabs
Mr. Krabs21.02.0915:47
void:
Guter Einwand! FTP sieht mir dafür auch geeigneter aus. Wenn man an die Logs kommt, hat man im Prinzip alles! Und das FTP (zumindest lesen) kann jeder aktuelle Browser.
„Deux Strudel!“
0
breaker
breaker21.02.0915:48
6 GB (auch in 500 MB Teilen) wirst du über den Browser via PHP vergessen können, da PHP Scripte in den meisten Fällen nur ein paar Sekunden Ausführzeit bekommen, ehe es vom Server abgebrochen wird.
0
rolfrein21.02.0916:15
ftp währe schon auch eine Lösung zum upload.
aber dann brauch ich wieder ein script, das mir automatisch die Files auf einer Webseite anzeigt, die ich mit ftp hochgeladen habe.

mache das für einen Freund und der kennt sich nicht wirklich aus.
Ein FTP programm kann ich ihm schon erklären und wo er die datein hinladen soll, aber dass er dann diese datei mit html in eine seite einbaut, dass ist zuviel verlangt
0
haemm0r21.02.0916:31
rolfrein
ftp währe schon auch eine Lösung zum upload.
aber dann brauch ich wieder ein script, das mir automatisch die Files auf einer Webseite anzeigt, die ich mit ftp hochgeladen habe.

mache das für einen Freund und der kennt sich nicht wirklich aus.
Ein FTP programm kann ich ihm schon erklären und wo er die datein hinladen soll, aber dass er dann diese datei mit html in eine seite einbaut, dass ist zuviel verlangt

Die Browser/FTP Clients sind auf fähig Ordner/Dateistrukturen darzustellen. Von dem her wäre das gut möglich.
„MacBook Pro late 2007, 15", 2,4GHz, 4GB DDR2 RAM, 256MB Nvidia 8600M GT, 120GB OCZ Vertex 2 / 160GB HD (kein Superdrive mehr nach 3 Laufwerksschäden )“
0
rolfrein21.02.0916:47
haemm0r
Die Browser/FTP Clients sind auf fähig Ordner/Dateistrukturen darzustellen. Von dem her wäre das gut möglich.

Sollte dann aber eine normale webseite sein, mit einem Link bei dem der download automatisch startet, also kein ftp-Verzeichnis über den Browser
0
Mr. Krabs
Mr. Krabs21.02.0916:49
Weil?
„Deux Strudel!“
0
rolfrein21.02.0916:56
weil eine verzeichnisstruktur zu kompliziert ist, eine einfache seite auf der es mehrere "Download Buttons" gibt
0
Mr. Krabs
Mr. Krabs21.02.0917:06
Das sagst du nun. Mit PHP ist das Skript, das dir mehrere Ordner ausliest und die Dateien anzeigt in 5 Minuten geschrieben. Den folgenden Codeschnipsel kannst du ein wenig anpassen und wenn du mehrere Ordnertiefen hast, benutze noch die is_dir()-Funktion von PHP.
$dir = opendir('deinordner');
while ($file = readdir($dir)) {
    if (substr($gallery, 0, 1) != '.') {
        echo $file;
    }
}
„Deux Strudel!“
0
void
void21.02.0917:14
sofern die dateien per ftp immer ins gleiche verzeichnis geladen werden, lies einfach den inhalt des ordners ein, filter die dv-dateien raus und liste diese auf...
siehe auch http://www.php.net/manual/de/ref.filesystem.php

edit: öh ja zu spät... nimm einfach den code von mr krabs
„Developer of the Day 11. Februar 2013“
0
rolfrein21.02.0917:17
danke, werde das heute abend mal probieren
0
rolfrein21.02.0923:41
$dir = opendir('deinordner');
while ($file = readdir($dir)) {
    if (substr($gallery, 0, 1) != '.') {
        echo $file;
    }
}


Danke, dieser Ansatz ist ja mal nicht schlecht.
So kann man mit FTP hochladen und hat sofort die Datein auf der Seite.

Jetzt muss ich es nur mehr schaffen, das ganze in Form zu bringen und die aufgelisteten Dateien zu Download-Links machen.

Wie mach ich das? (ich weiss, das ist jetzt fast unverschämt, aber ich kenn mich nicht wirklich aus mit PHP)
0
Mr. Krabs
Mr. Krabs22.02.0908:06
Das ist eine Form, mit der du das auf Internetseiten anzeigen kannst. Du sagst uns ja nicht, was du genau brauchst, also können wir nur raten...

Die wichtige Zeile für die Ausgabe ist
echo $file;
Den Downloadlink fügst du z.. so ein:
echo "<a href='deinordner/$file'>Download $file</a>";
Ich persönlich würde noch ein bisschen mehr Struktur zufügen (ul-Liste, etc.).

Mit dem echo-Befehl kannst du noch weitere HTML-Elemente ausgeben, sodass die Ausgabe nach deinen Wünschen erfolgt.
„Deux Strudel!“
0
rolfrein22.02.0908:44
Mr. Krabs
Das ist eine Form, mit der du das auf Internetseiten anzeigen kannst. Du sagst uns ja nicht, was du genau brauchst, also können wir nur raten...

Ich brauche:

1. Daten per FTP auf Server in Ordner "filme" legen (ihr Habt mich schon überzeugt mit dem FTP)
2. Eine Seite auf der die Datein vom Ordner "filme" gelesen werden, wo ich dann noch Kommentare zu jedem File/Film dazuschreiben kann und dann die Files freigeben kann damit man sich das File runterladen kann.
2. Die Files sollen sich nur registrierte Benutzer runterladen können (kann einfach sein, muss keine online-Registrierung stattfinden, genügt das man denen ein email, mit den zugangsdaten schickt)
3. Es soll protokolliert werden, wer sich was und wann runterläd.


so ca. sollte es sein, ob das wirklich nur ein paar codezeilen sind?
0
hausfreund22.02.0909:17
Für mich stellt sich hier die Frage, wie du die daten hosten möchtest. für derartige datenmengen bietet sich ein eigener server an. du kannst mich gern anmailen, dann bastel ich dir eine lösung. ich habe aber dennoch ein paar fragen dazu.
0
Mr. Krabs
Mr. Krabs22.02.0909:47
rolfrein:
Ein paar Codezeilen ist selten etwas, aber es ist nicht viel. Deine Seite besteht aus Login, einer Seite die den Inhalt des Ordners anzeigt (den Code hast du), einer Seite die aufgerufen wird, wenn eine Datei runtergeladen wird und die für das Logging verantwortlich ist. Da du FTP nicht für den Download benutzen willst, musst du dich selbst ums Logging kümmern, also kommt noch eine Textdatei oder eine Datenbank dazu. Das mit den Kommentaren erwähnst du jetzt auch zum ersten Mal. Die muss man natürlich auch irgendwo speichern.

Du siehst, es geht schnell von "Videos uploaden, die andere runterladen können" (reine FTP-Lösung) bis "Webseite die das alles anzeigt und auch noch Beschreibungen für die Videos". Ist nur die Frage, was für ein Komfort das System haben soll und was du bereit bist an Arbeit da rein zu stecken. Anfänge hast du nun mehr als genug Wenn du die Arbeit jedoch nicht selbst machen möchtest, meine E-Mail-Adresse steht unterm Bild.
„Deux Strudel!“
0
void
void22.02.0911:31
Login würde ich mit ner .htaccess datei lösen...

Das Kommentieren von Videos wird schon wieder erheblich komplizierter, da du hier entweder in Dateien schreiben musst, oder eine Datenbank benötigst...
"Kompliziert" ist das falsche Wort, aber du merkst, dass du immer mehr Technologien brauchst...

Für die Kommentare brauchst du auf jeden Fall eine weitere Datei... Ich führe mal den Code von Mr. Krabs fort:

index.php:
<html>
...
<?php
...
while(...){
  $encodedFile = urlencode($file);
  echo "<a href='kommentare.php?file=$encodedFile'>$file</a>";
}
?>
...
</html>

kommentare.php:
<html>
...
<?php
if(isset($_GET['file'])){
  $file = urldecode($_GET['file‘]);
  echo "<a href='deinordner/$file'>Download $file</a><br>";
  //Hier Kommentar-Funktion einbauen.
}
else{
  echo "Fehler: Keine Datei ausgew&auml;hlt";
}
?>
...
</html>

An der Stelle "//Hier Kommentar-Funktion einbauen." musst du dich entscheiden, ob du das ganze per Datenbank machen willst oder in einer Textdatei... Sag bescheid, was dir lieber ist, dann helfen wir dir an der Stelle weiter...
„Developer of the Day 11. Februar 2013“
0
rolfrein22.02.0912:10
void
An der Stelle "//Hier Kommentar-Funktion einbauen." musst du dich entscheiden, ob du das ganze per Datenbank machen willst oder in einer Textdatei... Sag bescheid, was dir lieber ist, dann helfen wir dir an der Stelle weiter...

ist mir eigentlich egal mysql ist vorhanden, je nachdem was einfacher ist



bei der index.php bekomm ich jetzt die datein als link aufgelistet (leider noch in einer wurst, keine zeilenumbrüche), wenn ich eine datei anklicke komm ich auf die kommentare.php, die jedoch noch leer erscheint
0
void
void23.02.0900:51
mysql ist für diesen (wie auch die meisten anderen) zwecke eindeutig besser... du benötigst allerdings die kenntnisse, damit umzugehen. und dir das hier auf die schnelle zu erklären halte ich für keine gute idee.

was deine wurst angeht:
du kannst in die echo-anweisung beliebige html-formatierungen übernehmen, deine zeilenumbrüche erhälst du also durch:
echo "...blabla.... <br>";

(bzw. <br/>, wenn du valides xml willst...)

die kommentare.php dürfte eigentlich nicht leer sein, guck mal im browser in den quellcode, irgendwas muss da ankommen. (habe den code aber auch nicht getestet)
„Developer of the Day 11. Februar 2013“
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.