Autor | Zpráva | ||
---|---|---|---|
davef6 Profil |
mám kód pro upload obrázku a potřebuji to rozšířit na více obrázků pomocí foreach, ale nevím jak to přesně udělat
if ($_GET[action] == "upload") { $blok = $_POST['blok']; $blok_upr = StrTr($blok, "\xe1\xe4\xe8\xef\xe9\xec\xed\xb5\xe5\xf2\xf3\xf6\xf5\xf4\xf8\xe0\xb9\xbb\xfa\xf9\xfc\xfb\xfd\xbe\xc1\xc4\xc8\xcf\xc9\xcc\xcd\xa5\xc5\xd2\xd3\xd6\xd5\xd4\xd8\xc0\xa9\xab\xda\xd9\xdc\xdb\xdd\xae", "aacdeeillnoooorrstuuuuyzAACDEEILLNOOOORRSTUUUUYZ"); $blok_upr = str_replace(" ", "-", $blok_upr); $id_kategorie = $_POST['kat']; $numb_fota = $_POST['obrazek']; $id_uziv = $_SESSION['id']; $max_file_size = "2500000"; $typ = $_FILES['obrazek']['type']; $allowed_types = array("image/jpeg", "image/pjpeg"); if (!in_array($typ, $allowed_types)) echo "<p>Podporován pouze .jpg formát</p>"; elseif ($_FILES['obrazek']['size'] > $max_file_size) echo "<p>Maximální povolená velikost obrázku jsou 2MB</p>"; elseif (empty($id_kategorie)) echo "<p>Neni vybrána žádná kategorie</p>"; elseif (empty($blok)) echo "<p>Zvolte název bloku.</p>"; else { if (is_uploaded_file($_FILES["obrazek"]["tmp_name"])) move_uploaded_file($_FILES["obrazek"]["tmp_name"], "../img_thumbs/".$_FILES["obrazek"]["name"]); else { echo "<p>Nebyl vybrán žádný obrázek!!!</p>"; exit(); } $adresar_uziv = "../img_db/$blok_upr/"; if (!is_dir($adresar_uziv)) mkdir($adresar_uziv, 0777); $adresar_uziv = "../img_db/$blok_upr/thumbs/"; if (!is_dir($adresar_uziv)) mkdir($adresar_uziv, 0777); $prikaz = mysql_fetch_row(mysql_query("SELECT `AUTO_INCREMENT` FROM `information_schema`.`TABLES` WHERE `TABLE_NAME` = 'images' AND `TABLE_SCHEMA` = 'mp3stahujcz'")); $obrazek = "../img_thumbs/".$_FILES["obrazek"]["name"]; $do_big = "../img_db/$blok/$prikaz[0].jpg"; $do_thumb = "../img_db/$blok/thumbs/$prikaz[0].jpg"; $do_big = StrTr($do_big, "\xe1\xe4\xe8\xef\xe9\xec\xed\xb5\xe5\xf2\xf3\xf6\xf5\xf4\xf8\xe0\xb9\xbb\xfa\xf9\xfc\xfb\xfd\xbe\xc1\xc4\xc8\xcf\xc9\xcc\xcd\xa5\xc5\xd2\xd3\xd6\xd5\xd4\xd8\xc0\xa9\xab\xda\xd9\xdc\xdb\xdd\xae", "aacdeeillnoooorrstuuuuyzAACDEEILLNOOOORRSTUUUUYZ"); $do_thumb = StrTr($do_thumb, "\xe1\xe4\xe8\xef\xe9\xec\xed\xb5\xe5\xf2\xf3\xf6\xf5\xf4\xf8\xe0\xb9\xbb\xfa\xf9\xfc\xfb\xfd\xbe\xc1\xc4\xc8\xcf\xc9\xcc\xcd\xa5\xc5\xd2\xd3\xd6\xd5\xd4\xd8\xc0\xa9\xab\xda\xd9\xdc\xdb\xdd\xae", "aacdeeillnoooorrstuuuuyzAACDEEILLNOOOORRSTUUUUYZ"); $do_thumb = str_replace(" ", "", $do_thumb); $do_big = str_replace(" ", "", $do_big); resizePhoto($obrazek, $do_thumb, '1000', '85', '1', '75'); resizePhoto($obrazek, $do_big, '500', '2000', '1', '75'); $cas = time(); $vysledek = MySQL_Query("INSERT into images VALUES ('', '$do_big', '$do_thumb', '$cas', '$id_kategorie')"); $vysledek2 = MySQL_Query("INSERT into img_blok VALUES ('', '$blok', '$blok_upr', '$cas', '$id_kategorie')"); $id_obr = mysql_insert_id(); MySQL_Query("INSERT into kat_img VALUES ('$id_kategorie', '$id_obr')"); if ($vysledek and $vysledek2) { echo "<p>Nahrání fota proběhlo úspěšně.</p>"; unlink($obrazek); } else echo "<p>Nepovedlo se foto nahrát.</p>"; } } } kde do $numb_fota posílám <td><input name=\"obrazek[$c]\" type=\"file\" /></td> jde mi jen o to jak umístit foreach, aby mi to fungovalo |
||
Časová prodleva: 4 dny
|
|||
djlj Profil |
#2 · Zasláno: 3. 2. 2009, 03:15:07
Je to dost chaotický, ale obecně:
foreach($polesobrazky as $pole){...} $polesobrazky bude v tvým případě asi $FILES['obrazek']. |
||
AM_ Profil |
#3 · Zasláno: 3. 2. 2009, 08:11:02
djlj
Bohužel je to udělané trochu nešikovně, při uploadu pole je to $_FILES[formfield][name|size|tmp_name|error][index], takže ani foreachem se to nedá pořádně procházet, klasický for cyklus je lepší. |
||
djlj Profil |
#4 · Zasláno: 3. 2. 2009, 13:23:11
AM_
Mělo by to být $FILES['pole'][0]['size'] -- a tak dál. |
||
Časová prodleva: 15 let
|
0