A na stronie krok_3.1.php skrypt który obsługuje przesłane pliki:
<? $znacznik_przeslania=1; for ($i = 1; $i <= 6; $i++) { $numerpliku="plik".$i; if($HTTP_POST_VARS['ok'] == 1){ if($HTTP_POST_FILES[$numerpliku]['size'] < 52428800 && $HTTP_POST_FILES[$numerpliku]['size'] != 0){ move_uploaded_file($HTTP_POST_FILES[$numerpliku]['tmp_name'], "dane/zlecenia/$zlecenie/".$HTTP_POST_FILES[$numerpliku]['name']); chmod("dane/zlecenia/$zlecenie/".$HTTP_POST_FILES[$numerpliku]['name'], 0777); /* zmiana nazwy pliku na nazwe bez polskich znakow diaktrycznych */ $plik_przed="dane/zlecenia/$zlecenie/".$HTTP_POST_FILES[$numerpliku]['name']; $plik_tmp=str_replace ( array ( "ń", "Ń", "ą", "Ą", "ć", "Ć", "ę", "Ę", "ł", "Ł", "ó" , "Ó", "ś", "Ś", "ź", "Ź", "ż", "Ż", " " ,"%", "@", "^", "#", "$", "&") , array ( "n" , "N", "a", "A", "c", "C", "e", "E", "l", "L", "o", "O", "s", "S", "z", "Z", "z", "Z", "_", "_", "_", "_", "_", "_", "_") , $HTTP_POST_FILES[$numerpliku]['name'] ); $plik_po="dane/zlecenia/$zlecenie/".$plik_tmp; /* ====================POBIRANIE ROZSZERZENIA PLIKU====================== */ /* ====================================================================== */ /* ==TWORZENIE MINIATURY DO WYSWIETLENIA NA STRONIE DLA UZYTKOWNIKA=== */ if ($file_copy_end==".jpg" OR $file_copy_end==".JPG") { $img = imagecreatefromjpeg("dane/zlecenia/$zlecenie/".$plik_tmp); $width = imagesx($img); $height = imagesy($img); $width_mini = $width * 0.1; $height_mini = $height * 0.1; $img_mini = imagecreatetruecolor($width_mini, $height_mini); imagecopyresampled($img_mini, $img, 0, 0, 0, 0, $width_mini , $height_mini, $width , $height); imagejpeg($img_mini, "dane/zlecenia/$zlecenie/mini/".$plik_tmp, 80); imagedestroy($img); imagedestroy($img_mini); } elseif ( $file_copy_end==".tiff" OR $file_copy_end==".TIFF" OR $file_copy_end==".bmp" OR $file_copy_end==".BMP" OR $file_copy_end==".TIF" OR $file_copy_end==".tif") { $plik_przed_kop="dane/inne_formaty/inny.jpg"; $plik_po_kop="dane/zlecenia/$zlecenie/mini/inny.jpg"; chmod($plik_po_kop, 0777); $pos++; $plik_po_zmianie=$file_copy_front_I."/mini/".$file_copy_end_I.".jpg"; } else { echo"<span class='tekst_kom'>Plik <strong>".$plik_tmp." nie zostal zapisany</strong> poniewaz nie jest plikiem zdjeciowym!</span><br />"; $znacznik_przeslania=0; } /* ===================================================================== */ } }else{ } } } if ($znacznik_przeslania==0) {echo "<span class='tekst_kom'>Obslugiwane formaty plikow to <strong>JPG, BMP, TIFF</strong>.</span><br /><br />";} else {} echo"<span class='tekst_kom'> Jeżeli chcesz dodać kolejne zdjęcia użyj powyższych formularzy.<br /> Jeżeli dodałeś/dodałaś już wszystkie zdjęcia kliknij w przycisk DALEJ<br /> aby ustalić ilość odbitek. </span>"; /* #################### Sprawdzanie zawartości katalogu i wypisywanie go. #######
################## */ if ($file != "." && $file != ".." && $file != "%.txt") { $plik="dane/zlecenia/$zlecenie/mini/".$file; $plik_link="dane/zlecenia/$zlecenie/".$file; echo ("<div id='ramka_3_1'><a href='$plik_link' target='_blank' class='link_do_pliku'><img src='".$plik."' width='70' height='55' class='link_do_pliku' /><br />".$file."</a></div>"); } } } ?>
Problem polega na tym, że serwer nie chce przyjąć plików większych niż 2MB. Zła konfiguracja serwera czy błąd w skrypcie? Hostin na livenet.pl. Człowiek, który obsługuje serwer nie wie co jest problemem, najciekawsze jest to że ten skrypt działał sprawnie ponad 1,5 roku i ostatnio przestał. Firma hostingowa zmieniała serwery i OS.
max_memory jest zmienoione na 50 MB, max_upload_size i max_post_size tez. Taką informację podał mi operator serwera.
PHP obsługiwane jest jako CGI.