Feltoltott fajlok meretenek elenorzese
Van egy php szkriptem amely fajlok feltoltesere szolgal.
A feltoltott fajlok neve, merete, tipusa egy ideglenes mySQL tablaban lesznek tarolva (files_temp).
Peldaul ha egy felhasznalo feltolt egy fajlot a kovetkezo adatok kerulnek be a tablaba (ahol userid a felhasznalo azonositoja)Maga a fajl a szerveren lesz tarolva.
Hogyan tudnam leelenorizni az osszes feltoltott fajl meretet, es visszakuldeni a browszernek egy valaszt, hogy ok most tovabb lephetek, mert az osszes feltoltott fajl merete osszeadva nem haladja meg a 10MB-t.
En gondoltam a mySQL sum hasznalatara. De nem tudom meghatarozni, hogy melyik fajlokat toltottem fel utoljara. A mysql_insert_id is csak az utolso bejegyzest kuldi vissza.
Tudnatok esetleg mas otleteket adni ? A lenyeg az, hogy a szerveren vegezem el a leelenorzest, nem ragaszkodok a mySQL megoldashoz sem.
Koszonom !
■ A feltoltott fajlok neve, merete, tipusa egy ideglenes mySQL tablaban lesznek tarolva (files_temp).
Peldaul ha egy felhasznalo feltolt egy fajlot a kovetkezo adatok kerulnek be a tablaba (ahol userid a felhasznalo azonositoja)
id userid name size type
1 3 File.exe 79360 application/x-sdlc
Hogyan tudnam leelenorizni az osszes feltoltott fajl meretet, es visszakuldeni a browszernek egy valaszt, hogy ok most tovabb lephetek, mert az osszes feltoltott fajl merete osszeadva nem haladja meg a 10MB-t.
En gondoltam a mySQL sum hasznalatara. De nem tudom meghatarozni, hogy melyik fajlokat toltottem fel utoljara. A mysql_insert_id is csak az utolso bejegyzest kuldi vissza.
Tudnatok esetleg mas otleteket adni ? A lenyeg az, hogy a szerveren vegezem el a leelenorzest, nem ragaszkodok a mySQL megoldashoz sem.
Koszonom !
filesize
Koszonom
A fugveny mySQL-ben van tamogatva vagy PHP-ben?
Mondjuk fugveny letezik mySQL-ben is, a SUM de olvasd el fent amit el szeretnek erni. Tegyuk fel, hogy a felhasznalo tobb fajlot kuld fel.
Koszonom!
leírták a választ...
Ajánlom, tölts fel több 'fájlot', aztán írasd ki, hogy mit tartalmaz...
kosz
rossz volt a kérdés
Ez számomra is azt jelenti, hogy hogyan tudom megnézni, hogy amit feltöltöttek, az mekkora volt. (mondjuk attól még ki lehetett volna találni, hogy mit szeretnél, cask az már nehezebb...)
Holott, te erre vagy kíváncsi:
"Honnan tudom megmondani, hogy a feltöltött fájlok összesen mekkora helyet foglalnak?"
És a válasz: én nem használnám a filesize() függvényt, hanem összeadnám a $_FILES tömbben lévő megfelelő értékeket.
Amúgy meg, ha php.ini-ben van korlátozva, akkor NEM fogod megkapni a fájlokat, ha nagyobb, mint 10Mb (http://hu.php.net/manual/hu/features.file-upload.errors.php#67931) . Paradox helyzet, de ez van.
A PHP 5.2-től kezdve (ha jól emléxem) a feltöltött fájlokra vonatkozóan lesz infó, olyan, ami miatt a file progressbar-okat mostanában perlel, vagy más módon kell megoldani, csak PHPvel nem lehet. Bár IMHO erre még várni kell, hogy elterjedjen ;)
ok
nem hiszem el...
Akik ezeket nem tudjak megoldani onalloan, miert allnak neki php-ben programozni? Nagy kerdojel szamomra ez mindig, honnan az ihlet? Mit akarnak csinalni az eddigi megszerzett tudassal?
Nem vitat szeretnek, mert tudom, az a lenyeg segitsuk egymast gyerekek, de valahol kellene szabni egy hatart, hogy milyen kerdesek hangozhatnanak el.
tudom
Sietés
Egyébként nesze:
[colorer=php]
<?php
$filemeret = 0;
foreach ($_FILES as $file)
{
$filemeret = $filemeret + $file['size'];
}
echo("Összesen " . $filemeret . " byte adatot töltöttél föl.");
?>
Most néztem a kódodat, meglehet úgy csinálni, ha a file mező neve az, hogy userFile[]. Akkor megfelelően kell módosítani a foreach paraméterét és a ciklust.
Hogy nehogy...
Ha nem tudsz angolul, akkor séta a legközelebbi megfelelő könyvesboltba vagy itt nézd meg a könyvajánlót és végy egy PHP könyvet.
Egy másik A.
ui. szerintem, az a kód ott nagyon nem jó. honnan szedted?
egyszerű összeadás
gex
koszonom
Vegul is talaltam egy egyszerubb megoldast
Összes file
Ja, és van két progrssbarom feltöltésre PHP-ben. Ha nagyon erőszakosak vagytok akkor talán írok egy cikket belőlük...
másik téma folytatása
szerintem elég valószínű, hogy ezt a témát folytatjuk ("fajlot" ragozás).
egyébként az egyesével feltöltött fájlokhoz szerintem elég a session is, amennyiben egyszeri feltöltésről van szó. ha később esetleg töröl és újabbakat is feltölt, akkor meg úgyis szüksége lesz az sql-re.
gex
u.i.: aztán még az is jó kérdés, hogy mihez kapcsolódnak a fájlok, én nem hiszem, hogy egy felhasználóhoz, úgyhogy más alapján csoportosítanék.