Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Czytanie plikow
Forum PHP.pl > Forum > Przedszkole
Van Pytel
Witam.

Mam taki problem.

W folderze mam kilka plikow o rozszerzeniu archive.tar.bz2.xx Gdzie xx to sa party czyli 00 / 01 / 02 itd.

Tak naprawdę nie wiem ile ich jest. Ponieważ to archiwum robi sie samo (kopia) i nie wiem ile mu wyjdzie.

Korzystam z klasy phpmailer i chce wyslac te zalaczniki (tzn te archiwa), recznie ich nie moge wypisać, bo nie wiem ile ich wyjdzie.


W skrypcie mam tak:

  1. $mail->AddAttachment("plik", "nazwa zalacznika");



I teraz jak zrobic aby wszystkie pliki tzn party archiwum dodal do zalacznika i wyslal.

Wiem, ze trzeba to za pomoca petli zrobic, ale nie mam pojecia jak sad.gif

Dzieki za odpowiedz.

pozdro
mike
Zacznij od znalezienia sposobu na przeczytanie zawartości folderu.
Znajdziesz setki wątków na forum, w których jest to opisane. Zakręć się wokoło opendir() lub [urlhttp://pl2.php.net/manual/pl/class.directoryiterator.php]DirectoryIterator[/url].
Van Pytel
No tak, ale nie moge calego folderu dodac tylko archiwa. W tym folderze mam tez inne pliki (skrypty) ktore nie musze wysylac. Mam pewien pomysl, ale nie wiem czy mi sie uda
Pilsener
Poczytaj o funkcji glob, zwłaszcza o argumentach jakie może przyjąć w postaci *.jpg etc...
Van Pytel
Dzieki o to mi chodzilo. Tylko mam kolejny problem.

Zalaczniki mam ~ 25 mb

Gdy teraz wywoluje skrypt (tzn gdy dochodzi do wysylania emaila) to mam blad:

Cytat
Allowed memory size of 62914560 bytes exhausted (tried to allocate 33973864 bytes) in /var/www/Backup/class.phpmailer.php on line 1495


W phpmailer.php jest tak:

  1. $encoded = chunk_split(base64_encode($str), 76, $this->LE);


W php.ini mam tak:

memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)

Nawet na poaczatku skryptu dawalem tak:

  1. ini_set("memory_limit", "160M");


To nic nie dawalo.

Ma ktos jakis pomysl?

pozdro
kipero
Może zamiast wysyłać wszystko w jednym mailu, wyślij kilka wiadomości.
Van Pytel
Wolalbym miec w jednym emailu to.

Zwiekszylem w skrypcie limit_memory

to teraz mam:

Cytat
postdrop: warning: uid=X: File too large
sendmail: fatal: user(X): message file too big
Could not instantiate mail function.


sad.gif

Mowisz kilka wiadomosci hmm, ale nie mam pomyslu jak to zrobic sad.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.