Christiane: Zip-Datei mit Php erstellen

Hallo!

Ich beschäftige mich noch nicht so lange mit Php und stehe jetzt vor einem Problem: Ich lese aus einer Datenbank die Speicherplätze verschiedener mp3-Dateien aus, die alle in verschiedenen Verzeichnissen liegen können können und deren Anzahl variabel ist. Ich möchte jetzt genau diese Dateien zu einer Zip-Datei zusammenfügen und zum Download anbieten, habe aber keine Ahnung, wie ich das bewerkstelligen soll.

Ich weiß zwar, dass es in Php eine Funktion zum Erstellen von Zip-Archiven gibt und ich hab hier auch ein Beispiel gefunden, mit dem man z.B. .txt-Dateien erzeugen und dann einem Zip-Archiv hinzufügen kann, aber ich weiß einfach nicht, wie das funktioniert, wenn ich verschiedene Dateien in verschiedenen Verzeichnissen habe, weil ich unter anderem keine Ahnung habe, wie genau man die Dateinamen angibt, vor allem, wenn sie als Variablen vorliegen...

Ich wäre Euch für Eure Hilfe wirklich dankbar!

Viele Grüße
Christiane

  1. Ich grüsse den Cosmos,

    wie das funktioniert, wenn ich verschiedene Dateien in verschiedenen Verzeichnissen habe,

    Und wieso kopierst du sie nicht in einen extra Ordner und packst diesen?

    Möge das "Self" mit euch sein

    --
    Fragt ein Atom das andere: Hast du mein Elektron gesehen? Ich bin heute so positiv.
    ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
  2. Hi!

    Ich lese aus einer Datenbank die Speicherplätze verschiedener mp3-Dateien aus, die alle in verschiedenen Verzeichnissen liegen können können und deren Anzahl variabel ist. Ich möchte jetzt genau diese Dateien zu einer Zip-Datei zusammenfügen und zum Download anbieten

    Das ist aber keine gute Idee.
    mp3-Files sind ja bereits komprimiert. Wenn du die jetzt mit ZIP zusammenpackst, dann werden die Files auch nicht mehr kleiner.
    Es wird nur sinnlos Rechnerleistung verschwendet. Es dauert u.U. recht lange, bis die Files ge- bzw. entpackt sind.
    Da du keinerlei Nutzen davon haben wirst, wäre es viel sinnvoller, die Files einfach nur mit tar zu einem Archiv zusammenzufassen.
    Dazu könntest du entweder das auf dem Server installierte tar benutzen, indem du mit exec() darauf zugreifst, aber du setzt das PEAR-Paket dazu ein.
    Tutorial hier: TAR File Management With PHP Archive_Tar

    Ich weiß zwar, dass es in Php eine Funktion zum Erstellen von Zip-Archiven gibt und ich hab hier auch ein Beispiel gefunden, mit dem man z.B. .txt-Dateien erzeugen und dann einem Zip-Archiv hinzufügen kann, aber ich weiß einfach nicht, wie das funktioniert, wenn ich verschiedene Dateien in verschiedenen Verzeichnissen habe, weil ich unter anderem keine Ahnung habe, wie genau man die Dateinamen angibt, vor allem, wenn sie als Variablen vorliegen...

    Im PHP-Handbuch findest du neben den Beschreibungen der Funktionen auch noch einige Beispiele:
    http://www.php.net/manual/de/ref.zip.php
    http://www.php.net/manual/de/ref.zlib.php
    Wenn irgendwas nicht funktionieren sollte, dann zeig uns deine Ansätze.
    Poste deinen Code und man wird dir sicherlich schnell helfen können.

    Schöner Gruß,
    rob

  3. Hi,

    Ich weiß zwar, dass es in Php eine Funktion zum Erstellen von Zip-Archiven gibt

    Lesen, nicht erstellen.

    Ich wäre Euch für Eure Hilfe wirklich dankbar!

    Schau dir vielleicht mal ZIP-Archiv erstellen & ZIP-Archiv erstellen 2. Funktionieren tun die Scripte natürlich auch ... ;-)

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!