« 1 2 »
Autor Zpráva
Anonymní
Profil *
naydarek, ako zistim velkost obrazka v php pred nahranim na server?
WertriK
Profil *
Jako rozmery ?
WertriK
Profil *
pokud chces jako velikost (b) tak to je $_FILES["soubor"]["size"] - doufam ze to tak je
Leo
Profil
Pred nahranim na server v PHP nijak, protoze to PHP umi jen u obrazku, ktere ma fyzicky k dispozici na serveru :-) Leo
WertriK
Profil *
no ale pokud ten soubor bude odesilat tak jeste pred uploadem to muze zkontrolovat pres $_FILES["soubor"]["size"] nebo se mylim ?
Anonymní
Profil *
myslel som ako rozmery v px, to size poznam a kontrolujem tym velkost v b
WertriK
Profil *
no tak rozmery zjistis jen kdyz ten img budes mit na servru , tak to zjistis pomoci :

list($img_x, $img_y, $type, $attr) = getimagesize("obrazek");
Anonymní
Profil *
a inak sa to neda? asi len java scriptom vsak?
WertriK
Profil *
JS neumim ale rekl bych ze to taky nepujde...

ale proc to neudelas tak ze to uploadnes na server zmeris rozmery a podle toho ten obrazek tam nechas nebo ho smazes...
Anonymní
Profil *
aha, aj to je mozne len to nebude zdlhave pri pomalych pripojeniach?
WertriK
Profil *
hlavne to muze nas*** kdyz tam budes 2 minuty nahravat obrazek a potom ti to vyplivne ze je moc velky ... (nebo moc maly)
Leo
Profil
"tak jeste pred uploadem to muze zkontrolovat pres $_FILES["soubor"]["size"] "

Ne. To funguje jen v pripade, ze se upload uz provedl, Leo
Leo
Profil
Velikost obrazku myslite jakou? Rozmery v pixelech nebo datovou v bytech? Leo
WertriK
Profil *
Velikost obrazku myslite jakou? Rozmery v pixelech nebo datovou v bytech?

Rozmery v px.
Anonymní
Profil *
no a teraz rozmyslam, ze ja by som ich obrazok upravil, bolo by to zlozite?Tak by sa to len raz nahralo a automaticky zmenilo rozmery, da sa to?
WertriK
Profil *
samozrejme ze da...

$x_new_img = sirka obrazku ktery chces vytvorit
$y_new_img = vyska obrazku ktery chces vytvorit

$file = jmeno souboru co jsi uploadnul, cili velkeho souboru
// predpokladam ze maly obrazek bude na jinem miste a bude se jmenovat stejne jako velky obrazek
$cesta = cesta k souboru ktery jsi uploadnul na server, cili ten velky
$cesta_mini = cesta k souboru ktery jsi vytvoril php scriptem, cili ten maly


list($jmeno,$typ) = explode(".",$file);
$typ = strtolower($typ);

if ($typ == "gif") { $vstup_funkce = ImageCreateFromGIF; $vystup_funkce = ImageGIF; }
elseif ($typ == "jpg") { $vstup_funkce = ImageCreateFromJPEG; $vystup_funkce = ImageJPEG; }
elseif ($typ == "png") { $vstup_funkce = ImageCreateFromPNG; $vystup_funkce = ImagePNG; }
else {
echo "<center>";
echo "Podporované soubory : <font color=\"red\">*.gif , *.jpg , *.png</font><br>";
echo "<A HREF=javascript:history.back()>Zpět</A>";
die("</center>");
exit();
}

$img_zdroj = $vstup_funkce("$cesta/$file"); // nacteme obrazek ze souboru
$img_cil = imagecreatetruecolor($x_new_img,$y_new_img); // vytvorime prostor pro cilovy obrazek
list($img_x, $img_y, $type, $attr) = getimagesize("$cesta/$file");
ImageCopyResized($img_cil,$img_zdroj,0,0,0,0,$x_new_img,$y_new_img,$im g_x,$img_y); // zmensime obrazek
$vystup_funkce($img_cil,"$cesta_mini/$file"); // zapiseme novy obrazek do souboru
ImageDestroy($img_zdroj); // uvolnime pamet zdrojoveho obrazku
ImageDestroy($img_cil); // uvolnime pamet ciloveho obrazku

doufam ze to je dobre
Leo
Profil
Proc do skriptu na zmenseni obrazku cpete jakasi echa? Leo
WertriK
Profil *
Kdyby treba chtel zmensovat bmp format tak aby mu to napsalo ze je to nepodporovany format..jde to z toho vydedukovat...
Anonymní
Profil *
WertriK

no fajn ide to len este mala drobnost.Obrazky ktore tam vkladam niesu rovnake a preto ked ich zmensujem na urcitu velkost tak sa deformuju.Teraz by trebalo vymysliet aby ten obr. ktory bude mini aby si zachoval pomer stran.Cize ak bude mat velkost pociatocnu 770x479 tak po zmenseni 150x93 aby sa ten pomer stran nezmenil ale aby boli aj maximalne rozmery dajme tomu 350x300.Dufam ze som to nedomotal este viac,hej a dakujem za ten zdrojak velmi poucny, este raz dik
Cenobit
Profil
Hi

nebylo by lespi zmenit u JPG terba jen kompresni pomer?
Anonymní
Profil *
ale tu ide o velkost v px nie v bajtoch
WertriK
Profil *
list($img_x, $img_y, $type, $attr) = getimagesize("$cesta/$file");

$x_new_img = sirka obrazku ktery chces vytvorit

$x = $img_x/$x_new_img;
$y_new_img = $img_y/$x; // podle sirky ti to vypocita vysku, aby byl zachovan pomer stran, doufam ze to je matematicky dobre

$file = jmeno souboru co jsi uploadnul, cili velkeho souboru
// predpokladam ze maly obrazek bude na jinem miste a bude se jmenovat stejne jako velky obrazek
$cesta = cesta k souboru ktery jsi uploadnul na server, cili ten velky
$cesta_mini = cesta k souboru ktery jsi vytvoril php scriptem, cili ten maly


list($jmeno,$typ) = explode(".",$file);
$typ = strtolower($typ);

if ($typ == "gif") { $vstup_funkce = ImageCreateFromGIF; $vystup_funkce = ImageGIF; }
elseif ($typ == "jpg") { $vstup_funkce = ImageCreateFromJPEG; $vystup_funkce = ImageJPEG; }
elseif ($typ == "png") { $vstup_funkce = ImageCreateFromPNG; $vystup_funkce = ImagePNG; }
else {
echo "<center>";
echo "Podporované soubory : <font color=\"red\">*.gif , *.jpg , *.png</font><br>";
echo "<A HREF=javascript:history.back()>Zpět</A>";
die("</center>");
exit();
}

$img_zdroj = $vstup_funkce("$cesta/$file");
$img_cil = imagecreatetruecolor($x_new_img,$y_new_img);
ImageCopyResized($img_cil,$img_zdroj,0,0,0,0,$x_new_img,$y_new_img,$im g_x,$img_y);
$vystup_funkce($img_cil,"$cesta_mini/$file");
ImageDestroy($img_zdroj);
ImageDestroy($img_cil);
Anonymní
Profil *
WertriK
no ja som to uz urobil jednoducho

$x_new_img = $width/2;
$y_new_img = $height/2;

a len s jpg takze som to vsetko poupravoval a teraz to ide dobre, len v IE nemozem nacitat a uploadnut ziadny obrazok, nevies preco?
WertriK
Profil *
rekl bych ze chyba nebude v PHP ale v html nejspis ve formu.
Dej sem kód a uvidíme...
Anonymní
Profil *
<form action="index.php?az=pridat_fotku" enctype="multipart/form-data" method="post">
<input type="file" name="fotka" size="32" class="ibox" />
<input type="submit" name="submit" value="Uložiť" class="submit" />
</div>
</form>

Aj ja si to myslim, ale v tom chyba tiez nieje.
Anonymní
Profil *
ono to neprejde cez tuto podmienku

if ($_FILES['fotka']['type'] != "image/jpeg")
{
echo "<p>Je povoleny len format JPEG.</p>";
}
else
{.....
Leo
Profil
Protoze IE posila misto "image/jpeg" typ "image/pjpeg"

Leo
Anonymní
Profil *
oki opera a ff to bude brat?
Leo
Profil
Ty posilaji image/jpeg, co vim, Leo
Anonymní
Profil *
no to ja viem tiez a ako by to bolo dobre opravit? ako nato?dakujem
« 1 2 »
Toto téma je uzamčeno. Odpověď nelze zaslat.

0