Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
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
rolfrein
21.02.09
14: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
Hilfreich?
0
Kommentare
Mr. Krabs
21.02.09
15: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!“
Hilfreich?
0
void
21.02.09
15: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“
Hilfreich?
0
Mr. Krabs
21.02.09
15: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!“
Hilfreich?
0
breaker
21.02.09
15: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.
Hilfreich?
0
rolfrein
21.02.09
16: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
Hilfreich?
0
haemm0r
21.02.09
16: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
)“
Hilfreich?
0
rolfrein
21.02.09
16: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
Hilfreich?
0
Mr. Krabs
21.02.09
16:49
Weil?
„Deux Strudel!“
Hilfreich?
0
rolfrein
21.02.09
16:56
weil eine verzeichnisstruktur zu kompliziert ist, eine einfache seite auf der es mehrere "Download Buttons" gibt
Hilfreich?
0
Mr. Krabs
21.02.09
17: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!“
Hilfreich?
0
void
21.02.09
17: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“
Hilfreich?
0
rolfrein
21.02.09
17:17
danke, werde das heute abend mal probieren
Hilfreich?
0
rolfrein
21.02.09
23: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)
Hilfreich?
0
Mr. Krabs
22.02.09
08: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!“
Hilfreich?
0
rolfrein
22.02.09
08: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?
Hilfreich?
0
hausfreund
22.02.09
09: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.
Hilfreich?
0
Mr. Krabs
22.02.09
09: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!“
Hilfreich?
0
void
22.02.09
11: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ä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“
Hilfreich?
0
rolfrein
22.02.09
12: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
Hilfreich?
0
void
23.02.09
00: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“
Hilfreich?
0
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.