Fotogaleria
12 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Ahojte. Chystam sa na fotogaleriu. Mam taky napad, skuste mi na to napisat co si o tom myslite, nazory, navrhy a pod.... Takze mam taku prestavu: Fotky potrebujem rozdelit do kategorii a podkategorii, takze: script fotogal.php bude primat kategoriu ako cestu k adresaru cez nejaku premennu z ktorej sa fotky maju natahovat... pr.: fotoga.php?path=/... bude urceny hlavny adresar s hlavnou kategoriou ?path=/* ... bude zobrazovat fotky z /fotogalery/* z daneho adresara nalistuje vsetky podadresare a zobrazi ich ako podkategorie (foreach: <a href="?path=/...">...</a>) To hlavne co vsak chcem, a s cim nemam velke skusenosti, je dynamicke vytvaranie thumbsov. Otvaranie obrazkov nie priamo, ale cez nejake php, ktore to moze logovat, rozhodovat o pristupe a pod... priklad: pre thumbsy: ...src=".../foto.php?thumb=/.......jpg/.png" s tym ze je jedno aky rozmer alebo typ suboru ma povodny subor, chcel by som aby sa script pokusil najst subor s "/fotogalery/..../t_*.gif" (zmenseny na max-width, max-height) a ak nebude existovat, tak ho vytvori dynamicky a ulozi do adresara, k originalu aby sa nemusel zakazdym generovat. po kliknuti na znenseny obrazok by sa velky mohol stahovat cez .../foto.php?big=... aby client nemohol zistit skutocne umiestnenie obrazku a pristupovat k nemu priamo. ...tiez rozmyslam nad nejakymi popismi k obrazkom, este stale niesom 100% rozhodnuty, ci ich budem davat do DB, alebo ako subor do adresara s obrazkami... Ten subor sa mi viac pozdava. V jednom subore by mohol byt popis galerie, a jednotlivych obrazkov, v nejakom rozumnom formate... Za vsetky vase nazory vopred dakujem :)
-
Resize obrazku treba takto : list($width, $height) = getimagesize($filename); $newheight = 320;$cifra = $height/320; $newwidth = $width/$cifra; if ($newwidth>480) {$novecislo = $newwidth/480;$newwidth=480; $newheight = 320/$novecislo;}} dal pouzijes : ImageCopyResized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); vice na http://cz.php.net/manual/en/function.imagecopyresized.php
-
Jen přihodím jeden nápad, co používám. Komentáře k obrázkům ukládám přímo do JPEG Comment těch fotkek. O starost méně s databází (i kdyby byla v texťáku). Navíc se můžu hrabat v adresářích s fotkami ručně, (vymazat, přídat) a nemusím potom řešit odkazy v databázi. Dá se na to stáhnout třída, takže uživatelsky nenáročné.
-
A je na to nějakej PHP skriptík? :) Nevím přesně, jak by se dalo pomocí PHP upravovat JPEG Comment fotky. Dík.
-
Pokud vím, tak zbi psal, že na to je na netu hotová třída. Hledej Puňťo, hledej. Třeba na Googlu ;)
-
<HTML>Má to své pro a proti, já bych sice tuhle variantu nevolil ale řešení to špatné není</HTML>
-
= zbi (knizky.unas.cz) = :) Tu DB ale potrebujes stejne pro zarazeni do alb a podobne. Rozhodne je rychlejsi vytahnout z DB id fotek z prislusneho alba nez prohledavat 10.000 obrazku a jejich coment rozsekavat a zpracovavat
-
= Prog. (coma.wz.cz) = "dynamicke vytvaranie thumbsov" Nedoporucuji, protoze to dlouho trva. Lepsi je vytvorit nahledy pri vkladani foto. 4-6k te nezabije navic a zrychli se tim mnohonasobne nacitani stranky. www.boutell.com/gd/ interval.cz/clanky/php-skript-pro-generovani-galerie-obrazku-2/ cz2.php.net/imagecopyresampled cz2.php.net/GetImageSize www.linuxsoft.cz/sw_detail.php?id_item=871 www.webtip.cz/art/wt_tech_php/liquid_ir.html upravenou verzi z interval mam tu: http://www.volny.cz/peter.mlich/www.htm#msub11 (zdroj: ppgal.rar) Muzu ti dat zdrojak tohoto (30k, 5+5k tvori zpracovani obrazku): http://mracek.hostuju.cz/album/album.php - pripadne, by jste mi mohli napsat k tomu nekdo nejake pripominky, chyby. To jsem ted nedavmno udelal a ten clovek pro ktereho se nejak nevyjadril.
-
http://mracek.hostuju.cz/album/album.php heslo tam je aaa a nemazte mi tu prvni foto, pripadne vsechny, co jste si tam nenahrali
-
pro zadani textu je FCE imagestring(); jako priklad uvedu zde toto: function declare_image($codovani,$file) { $newheight = 100; $height = 22; $arr = array(); //$font = imageloadfont("Arial black"); $thumb = imagecreatetruecolor(100,$height); $whitex=imagecolorallocate($thumb,0,0,0); imagefilledrectangle($thumb,0,0,100,$height,$whitex); $arr["red"] = rand(100,200)+55; $arr["green"] = rand(100,200)+55; $arr["blue"] = rand(100,200)+55; $white=imagecolorallocate($thumb, $arr["red"], $arr["green"], $arr["blue"]); imagefilledrectangle($thumb,0,1,100,20,$white); $col=imagecolorallocatealpha($thumb,120,100,0,ceil(150)); imagefilledrectangle($thumb,100,1,100,20,$col); $x1 = 0; $y1 = 10; $x2 = 100; $y2 = 10; $textcolor = imagecolorallocate($thumb, 100, 100, 100); $color = imagecolorallocate($thumb, 255, 80, 0); $sys[1] = chr(rand(48,90)); $sys[2] = chr(rand(48,90)); imageline($thumb,$x1,$y1,$x2,$y2,$color); imageline($thumb,15,0,15,22,$color); imageline($thumb,50,0,50,22,$color); imageline($thumb,85,0,85,22,$color); imagestring($thumb, 20, 20, 3, $codovani, $textcolor); //header("Content-Type: image/jpeg"); Imagejpeg($thumb,'',80); imagedestroy($thumb); } Tato FCE generuje nahodny kod jako obrazek to same lze ucinit i s obyc obrazkem stim ze misto nahodneho kodu se vlozi text. Sem zapis toto ($codovani = "jsem mamlas"; ) a uvidis co se stane na obrazku. Snad uz otestovat a vyzkouset si to dovedes sam ne.
-
to peta (peter-mlich.wz.cz) Databázi potřebuji a nepotřebuji, jak se to vezme. Moje galerie se vztahují k článkům. Každá galerie je ve svém adresáři. Název galerie je ID článku. Komentáře k jednotlivým fotkám jsou v jejich JPG Commentech. Takže vypíšu článek a podle jeho ID zobrazím fotky z adresáře tohoto čísla. Na jiném mém webu mám všechny fotky v jednom adresáři a číslo galerie je obsaženo v názvu fotky. Příklad: g13_m03.jpg (třetí fotka z galerie číslo 13, m znamená malá, tedy náhled). Velká fotka by byla např. g125_v12.jpg. Obě řešení spolehlivě fungují.
-
=certcv (certcv.wz.cz)= vdaka za scripty, ale som este len vo faze uvazovania :-) =zbi (knizky.unas.cz)= "...přímo do JPEG Comment těch fotkek. O starost méně s databází..." njn, pekna myslienka, keby slo o mensiu staticku galeriu. Fakt by to bolo asi najlepsie riesenie :-) Ale prieisl som na to, ze nejaka ta db sa zide... =peta (peter-mlich.wz.cz)= "dynamicke vytvaranie thumbsov" ...myslel som to tak, ze ak niekto poziada o obrazok ...thumb.php?file=... tak sa script pokusi najst zmenseny subor a poslat ho, ak sa nenajde, tak sa resmple-ne, a ulozi na disk a posle, aby sa nabuduce nemuzel zmensovat znova... (to len preto ze som hrozne lenivi robit to rucne :-) =peta (peter-mlich.wz.cz)= ":) Tu DB ale potrebujes stejne pro zarazeni do alb a podobne. Rozhodne je rychlejsi vytahnout z DB id fotek z prislusneho alba nez prohledavat 10.000 obrazku a jejich coment rozsekavat a zpracovavat" Povodna myslienka bola taka, ze kategorie = stromova adresarova struktura, nazvy fotiek = nazov suboru (bez pripony) a popis nejako externe... ale bolo by to uplne nepriehladne. A fakt pomale, zakazdym scanovat adresare, prasovat nejaky vlastny subor, ci xml... talo by to serveru zabrat... =all= takze najnovsia myslienka, co ma tak napada, postavena na db: Modul na spravu fotiek. Pridavanie by vyzeralo nasledovne: nakopnem obr do adresara/podadresara/... otvorim modul na spravu, najdem dotycny adresar a click na "reindex dirrectory" potom by sa subory z adresara naindexovali do tabulky v db. Potom by prisiel dalsi button "regenerate all thumbs", ktory by sa postaral o nahlady... Ak by vsak nahlady neexistovali, tak by sa generovali dynamicky, pri prvej poziadavke (povodna myslienka) Kedze by to bolo vsetko v DB, dali by sa na to pripajat nejake countery, hodnotenia, diskusie... a dalsia vyhoda, obrazky by sa volali podla id (namiesto image.php?file=/category1/subcategory/image.jpg by bolo image.php?id=123) cize ich skutocne umiestnenie by bolo uplne skryte pred okom uzivatela... Dakujem za vsetky napady :-)