PHP upload image např. 3x – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

PHP upload image např. 3x – PHP – Fórum – Programujte.comPHP upload image např. 3x – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Matthew
~ Anonymní uživatel
11 příspěvků
22. 4. 2014   #1
-
0
-

Ahoj mám tento php kod pro nahrání obrázku přes formulář, ale chtěl bych místo jednoho např. 3, jak mám do kodu připsat aby to šlo. Formuláš mám vytvořený. Díky za radu.

// upload the file if it exists
    $file    = uploadImage($_POST["uploadform"]);
    // Create a Thumbnail if an image exists
    if ($file != "no file")
    {    
        $date = date("YmdHis");
        $imgArr = split('[/]', $file);
        $imgNameOnly = $imgArr[sizeof($imgArr)-1];
        $folderPath = "";
        for ($i=0; $i<sizeof($imgArr)-1; $i++)
            $folderPath .=  $imgArr[$i] . "/" ;    
            
        $photoPathName = $folderPath . $date . "_" . $imgNameOnly;
        $thumbNailPathName = $folderPath . "thumb_" . $date . "_" . $imgNameOnly;
        $imgType = getImgType($imgNameOnly);
        // Create a resized image of the orig. a mx of 400 pixels
        $photo=new Thumbnail(400,400);
        // Load an image into a string (this could be from a database)
        $image=file_get_contents($file);
        // Load the image data
        $photo->loadData($image,$imgType);
        // Build the thumbnail and store as a file
        $photo->buildThumb($photoPathName);    
        // Instantiate the thumbnail
        $tn=new Thumbnail(80,80);
        // Load an image into a string (this could be from a database)
        $image=file_get_contents($file);
        // Load the image data
        $tn->loadData($image,$imgType);
        // Build the thumbnail and store as a file
        $tn->buildThumb($thumbNailPathName);
        // delete the source file that is potentially large
        unlink($file);
    }

Nahlásit jako SPAM
IP: 88.100.58.–
Reklama
Reklama
z
~ Anonymní uživatel
268 příspěvků
22. 4. 2014   #2
-
0
-

Jak připsat, aby to šlo? To jsi někde zkopčil a nechápeš ani řádek, viď?

Toto zpracuje jeden soubor. Takže to asi bude potřeba udělat opakovaně pro všechny ty soubory. Nejspíš nějakým cyklem.

PHP ManualHandling file uploads.

Nahlásit jako SPAM
IP: 88.101.8.–
Matthew
~ Anonymní uživatel
11 příspěvků
22. 4. 2014   #3
-
0
-

#2 z
Ano nebudu lhát je to kod co byl na internetu, snažím se to tímdle principem naučit plus s použití učebnice. A určitě na tom nejsem tak mizerne že nechápu každej řádek. Už jsem se to pokusil opravit. Udělal jsem si formulář pro nahratí 3 obrázku, upravil DB pro další upload. A funguje mi to až na jednu věc. Uplouduje mi to pokaždé 3x stejný obrázek i když je to nastavené na každý zvlášt. Todle beru jako poslední alternativu pomoci jinak bych nepsal a udělal jsi to sám.

Nahlásit jako SPAM
IP: 88.100.58.–
z
~ Anonymní uživatel
268 příspěvků
22. 4. 2014   #4
-
0
-

OK, toto celé stojí na tom, co vrátí funkce uploadImage. Tu ukaž.

Nahlásit jako SPAM
IP: 88.101.8.–
peter
~ Anonymní uživatel
2539 příspěvků
23. 4. 2014   #5
-
0
-

"na tom nejsem tak mizerne že nechápu každej řádek"
"Uplouduje mi to pokaždé 3x stejný obrázek"
:))) Aha.

$file    = uploadImage($_POST["uploadform"]);
A tento radek mas ve vsech trech kodech uplne jinaci, vid? Ne? Ale, vzdyt to je zakladni princip posilani. Co input, to jina promenna v $_POST ($_POST["uploadform"]), pokud ma kazdy input jine name (uploadform; uploadform1, uploadform2, uploadform3).

Navic, je tu omezeni upload-max-size a post-max-size, ktere obvykle byva na webech nastavene pro upload na 2MB a pro post na 8MB. Cili, max velikost souboru (obrazku) je 2MB a vsechny obrazky muzou mit dohromady 8MB.
Ale je tu moznost poslat to jinym zpusobem, nove nejakymi js metodami pro hromadny upload (zatim jsem to nepouzil, takze si nevzpomenu, jak se to presne jmenuje, ale maji to na http://webnode.cz/) a nebo ajaxem/jquery soubor po souboru.

z: myslim, ze je to celkem jasne. Predas ji data z postu a ona provede move_upload (nebo jen vrati link na soubor v tmp/ slozce) a nejake dalsi funkce pro presun souboru. Nic jineho to asi neumi. Samozrejme by to chtelo jeji kod.

Nahlásit jako SPAM
IP: 2001:718:2601:400:0:5efe:...–
Matthew
~ Anonymní uživatel
11 příspěvků
23. 4. 2014   #6
-
0
-

            Ano mám filetoupload/filetoupload2/filetoupload3

<input name="filetoupload" type="file" id="filetoupload" size="40" />
              <input type="hidden" name="MAX_FILE_SIZE" value="409600" />

Nahlásit jako SPAM
IP: 88.100.58.–
peter
~ Anonymní uživatel
2539 příspěvků
24. 4. 2014   #7
-
0
-

Tak to cele uzavri do funkce s parametrem $name a "uploadform" uvntir nahrad za $name. pak 3x zavolas funkci. 

mojefunkce('filetoupload');
mojefunkce('filetoupload2');
mojefunkce('filetoupload3');

Nebo tam dej cyklus, ktery se pokusi z $_POST vybrat vsechny hodnoty, ktere zacinaji slovem 'filetoupload'.

$arr = array();
foreach ($_POST as $key=>$value) {if (strpos('filetoupload',$key)===0) {$arr[]=$value;}}

Pripadne primo zavolat tu funkci a predat ji to do file. 

foreach ($_POST as $key=>$value) {if (strpos('filetoupload',$key)===0) {mojefunkce($value);}}
Nahlásit jako SPAM
IP: 2001:718:2601:400:0:5efe:...–
Matthew
~ Anonymní uživatel
11 příspěvků
2. 5. 2014   #8
-
0
-

Díky za rady, mrknu na to nebyl teď čas.

Nahlásit jako SPAM
IP: 88.100.58.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 21 hostů

Podobná vlákna

PHP GD a image funkce — založil Shaker

PHP file upload... — založil smycma

PHP upload více souborů — založil Loki

Vstup napr.z joysticku — založil Martin

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý