Autor | Zpráva | ||
---|---|---|---|
youfou Profil |
#1 · Zasláno: 6. 9. 2016, 00:15:18
Dobrý den,
mám tu menší problém, kod funguje jak má bez všech chyb jsem spokojený. Jen chci k tomuto dodělat i že se mi vytvoří miniaura a nahraje se do ../neco.cz/img/clanky/maly/ . Ta miniutura bude mít pevné rozměry vždy, takže žádne dopočitavaní. Ví někdo jak na to ? Budu rád za každou pomoc :) <?php if (isset($_FILES['image'])) { $file_name = $_FILES['image']['name']; $file_size = $_FILES['image']['size']; $file_tmp = $_FILES['image']['tmp_name']; $file_type = $_FILES['image']['type']; $exploded = explode('.', $_FILES['image']['name']); $file_ext = strtolower(end($exploded)); $expensions = array("jpeg", "jpg", "png"); if (in_array($file_ext, $expensions) === false) { $errors[] = "chybný formát souboru. Zvolte JPEG nebo PNG soubor."; } if ($file_size > 3145728) { $errors[] = 'Maximální velikost souboru je 3 MB'; } if (empty($errors) == true) { move_uploaded_file($file_tmp, "../neco.cz/img/clanky/velky/" . $file_name); } } |
||
Keeehi Profil |
#2 · Zasláno: 6. 9. 2016, 01:04:33
Nejdůležitější ke funkce imagecopyresampled. To je to, co provádí to samotné zmenšení. Vše ostatní je už jen výpočty správných parametrů pro předání té funkci. Na odkázané stránce máš i nějaké příklady. Pokud bys chtěl něco pokročilejšího a pohodlnějšího, pak můžeš použít třeba třídu Nette\Utils\Image.
|
||
youfou Profil |
#3 · Zasláno: 7. 9. 2016, 11:31:13
Zkusil jsem to použít. Ale někde jsem udělal chybičku a nemůžu opravdu přijít na to kde.
if (isset($_FILES['image'])) { $file_name = $_FILES['image']['name']; $file_size = $_FILES['image']['size']; $file_tmp = $_FILES['image']['tmp_name']; $file_type = $_FILES['image']['type']; $exploded = explode('.', $_FILES['image']['name']); $file_ext = strtolower(end($exploded)); $expensions = array("jpeg", "jpg", "png"); if (in_array($file_ext, $expensions) === false) { $errors[] = "chybný formát souboru. Zvolte JPEG nebo PNG soubor."; } if ($file_size > 3145728) { $errors[] = 'Maximální velikost souboru je 3 MB'; } if (empty($errors) == true) { move_uploaded_file($file_tmp, "../biorise.cz/img/clanky/velky/".$file_name); $image = imagecreatefrompng($_FILES['image']['tmp_name']); $width = imagesx($image); $height = imagesy($image); $nwidth = 600; $nheight = 600; $nimage = imagecreatetruecolor($nwidth, $nheight); imagecopyresampled($nimage, $image, 0, 0, 0, 0, $nwidth, $nheight, $width, $height); imagepng($nimage,"image.png"); move_uploaded_file($nimage, "../biorise.cz/img/clanky/maly/".$file_name); } } |
||
Časová prodleva: 9 let
|
0