stworzyłem sobie formularz za pośrednictwem którego można wrzucić jeden, dwa lub trzy pliki na serwer
oto fragment:
<input type="hidden" name="MAX_FILE_SIZE" value="2048000" />
<input name="plik1" type="file" /><br>
<input name="plik2" type="file" /><br>
<input name="plik3" type="file" /><br>
kod główny sprawdzający czy są załączniki i jeśli tak to uruchamia funkcje ZALACZNIKI_SPR() która zwraca tylko nazwę pliku:
CODE
if ($_FILES['plik1']['tmp_name'] != "") { $plik1=zalaczniki_spr('plik1'); }
if ($_FILES['plik2']['tmp_name'] != "") { $plik2=zalaczniki_spr('plik2'); }
if ($_FILES['plik3']['tmp_name'] != "") { $plik3=zalaczniki_spr('plik3'); }
print("Dane dodane z plikami: $plik1, $plik2, $plik3");
oto kod tej funkcji:
CODE
function zalaczniki_spr($pliczek) {
$plik_tmp = $_FILES[$pliczek]['tmp_name'];
$plik_nazwa = $_FILES[$pliczek]['name'];
if(is_uploaded_file($plik_tmp)) {
global $fo_nazwa; // tutaj dodaje do nazwy pliku wartosc innego pola formularza - cel - unikatowa nazwa pliku
$plik_nazwa = $fo_nazwa.'_'.$plik_nazwa;
// tutaj nudny kod poprawiajacy nazwe pliku
$plik_nazwa = strtolower($plik_nazwa);
$plik_nazwa = str_replace("ż","z",$plik_nazwa);
$plik_nazwa = str_replace(chr(177),"a",$plik_nazwa);
$plik_nazwa = str_replace(" ","_",$plik_nazwa);
$plik_nazwa = str_replace(chr(182),"s",$plik_nazwa);
$plik_nazwa = str_replace("ć","c",$plik_nazwa);
$plik_nazwa = str_replace(chr(188),"z",$plik_nazwa);
$plik_nazwa = str_replace("ó","o",$plik_nazwa);
$plik_nazwa = str_replace("ł","l",$plik_nazwa);
$plik_nazwa = str_replace("ń","n",$plik_nazwa);
$sciezka = $_SERVER['DOCUMENT_ROOT']."upload/";
// tutaj kod który znajduje rozszerzenie pliku
$dlugosc = strlen($plik_nazwa);
$j = 1;
while ($nzw_pliku==""):
$find_dot = substr($plik_nazwa, -$j, 1);
if($find_dot==".")
{ $nzw_pliku = substr($plik_nazwa, 0, $dlugosc-$j);
$rozszerzenie = substr($plik_nazwa, -$j+1, $j);
}
else
{ $j++; }
endwhile;
// sprawdzenie czy rozszerzenie jest OK
if($rozszerzenie != "exe" && $rozszerzenie != "com" && $rozszerzenie != "reg" && $rozszerzenie != "bat" && $rozszerzenie != "scr" && $rozszerzenie != "pif" && $rozszerzenie != "cmd" && $rozszerzenie != "vbs")
{ $dosprawdzenia = $sciezka;
$dosprawdzenia .= $plik_nazwa;
$i = 0;
while (file_exists($dosprawdzenia)):
$i++;
$nzw_pliku .=$i;
$dosprawdzenia = $sciezka;
$dosprawdzenia .= $nzw_pliku;
$dosprawdzenia .= ".";
$dosprawdzenia .= $rozszerzenie;
$plik_nazwa = $nzw_pliku;
$plik_nazwa .= ".";
$plik_nazwa .= $rozszerzenie;
endwhile;
// i końcóweczka, gdy wszystko co było wyżej jest OK
move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
return $plik_nazwa;
}
else
{ print("Niedozwolone rozszerzenie pliku."); }
}
}
no i co za problem mam

- 1 plik o wadze np. 200kb
- lub gdy dodaje 3 małe pliki o wadze 2kb

ale gdy dodaje 2/3 pliki o wadze okolo 200kb każdy, wtedy po kliknieciu na submit - czekam czekam.. i pojawia sie spowrotem formularz, a pliki nie sa wgrane
co jest zle??
pozdrawiam i bardzo prosze o pomoc!
PS. wartość MAX_FILE_SIZE dotyczy wszystkich plików? czy każdego z osobna?