Autor | Zpráva | ||
---|---|---|---|
Mufna Profil |
#1 · Zasláno: 6. 4. 2008, 18:27:54
Zdravím Vás. Mám problém s kontrolou velikosti uploadovaného souboru. Resp. problém je ten, že při překročení velikosti (soubor je již vybrán a zanesen do formuláře) vyběhne hláška "Nebylo vybráno nic k nahrání" (v kódu je to case "U7") místo toho, aby mi to hlásilo "Soubor překročil atd." - case "U3". Ostatní hlášky fungují správně, jen tahle prostě ne. Můžete se prosím někdo na to mrknout. Díky !
$upload_max_size je správně definována - $upload_max_size=524288; - v config.php a když ji zkusím vypsat echem přímo ve stránce s daným skriptem, je to tak jak má být. Zkoušel jsem nahrát soubor o velikosti cca. 2MB require("admin_html.php"); require_once("conf/config.php"); if (isset($_POST["upload"])) { if (is_uploaded_file($_FILES['userfile']['tmp_name'])) { if ($_FILES['userfile']['type']=="application/octet-stream") { Header("Location: ".$_POST["return_page"]."?msg=U6"); exit; } if ($_FILES['userfile']['size']>$upload_max_size) { Header("Location: ".$_POST["return_page"]."?msg=U3"); exit; } if (!eregi('^[A-Za-z0-9_-]+\.jpe?g$',$_FILES['userfile']['name'])) { Header("Location: ".$_POST["return_page"]."?msg=U4"); exit; } --- tady je kód pro vkládání } else if ($_FILES['userfile']['size']==0) { Header("Location: ".$_POST["return_page"]."?msg=U7"); exit; } else { Header("Location: ".$_POST["return_page"]."?msg=U2"); exit; } } a pak je přepínání if (isset($_GET["msg"])) { switch ($_GET["msg"]) { case "U1":echo '<div style="color: #008000;padding-bottom: 8px;">Fotografie byla ĂşpěšnÄ› uloĹľena!</div>'; break; case "U2":echo '<div style="color: #800000;padding-bottom: 8px;">Fotografii se nepoĹ™adilo nahrát na server!<br />ZĹ™ejmÄ› nejde o korektnĂ upload</div>'; break; case "U3":echo '<div style="color: #800000;padding-bottom: 8px;">Soubor pĹ™ekroÄŤil maximálnĂ povolenou velikost ('.round($upload_max_size/1024).' kB)!</div>'; break; case "U4":echo '<div style="color: #800000;padding-bottom: 8px;">Soubor musĂ bĂ˝t obrázek typu JPEG a název smĂ obsahovat pouze pĂsmena anglickĂ© abecedy, ÄŤĂslice, pomlÄŤky a podtrĹľĂtka!</div>'; break; case "U5":echo '<div style="color: #800000;padding-bottom: 8px;">Soubor tohoto jmĂ©na jiĹľ existuje!</div>'; break; case "U6":echo '<div style="color: #800000;padding-bottom: 8px;">Soubory s pĹ™Ăponou PHP jsou zakázany!</div>'; break; case "U7":echo '<div style="color: #800000;padding-bottom: 8px;">Nebylo vybráno nic k nahránĂ!</div>'; break; case "1":echo '<div style="color: #008000;padding-bottom: 8px;">ZvolenĂ© fotografie byly vymazány!</div>'; break; case "2":echo '<div style="color: #800000;padding-bottom: 8px;">Nebylo vybráno nic ke smazánĂ!</div>'; break; } } |
||
DJ Miky Profil |
#2 · Zasláno: 6. 4. 2008, 18:41:15
Je to proto, že soubory, které překračují onu velikost, se do skriptu vůbec nedostanou, tzn. jako by se nenahrály.
|
||
Mufna Profil |
#3 · Zasláno: 6. 4. 2008, 18:53:49
DJ Miky
Hm, tak díky, zkusím tu hlášku vyřešit jinak |
||
Časová prodleva: 16 let
|
0