Galéria elmélete
2010-11-03T18:48:49+01:00
2010-11-04T13:54:25+01:00
2022-07-24T22:02:36+02:00
  • Ilyesmire gondoltam (persze nagyon felületes):


    CSS:
    .info { visibility: hidden; }

    JS:
    function MutatRejt(DivNeve) { var div = document.getElementById(DivNeve).style.visibility; if (div == "hidden") { div = "visible" } else { div = "hidden" } }

    HTML:
    <img src="kepek/1.jpg" onClick="MutatRejt('1');" /> <div class="info" id="1">Neve: valami<br />Feltöltő: sanyi</div>
    Mutasd a teljes hozzászólást!
  • Köszi a választ.
    Hogy, hogy épüljön fel azt kicsit másképp mutatta a példa, mint ahogy én csináltam, de értem azt is.
    Én úgy csináltam hogy az első képnek a neve 1.(kiterjesztes), a másodiknak 2.(kiterjesztes), stb.
    De gondolom akkor az időfüggvényével egyszerűbb használni, meg nem lehet szinte sehogysem rájönni az egyes képekről hogy mikor töltötték fel, mert csak kiír egy x jegyű számot.
    Ezt a részét nagyon köszönöm a másodikkal van egy kérdésem.

    Pontosan hogy érted hogy rejtett divet használjak?

    Szerintem ez sokkal csúnyább mert ha van mondjuk 500 kép akkor a forráskódban 500 sor azzal telik el hogy:
    kepek[0] = "kepek/kep1.jpg";
    kepek[1] = "kepek/kep2.jpg";
    kepek[2] = "kepek/kep3.jpg";
    kepek[3] = "kepek/kep4.jpg";
    ...

    Ha már optimalizálás..
    for ($i = 0; $i <= 500; $i++) { kepek[$i] = "kepek/kep".$i+1.".jpg"; }


    Igazad van, én egy kicsit megnehezítettem a dolgomat mikor végi gondoltam. Úgy gondoltam hogy php-ban for-ral a js változónak értéket adok, így a php miatt mindig kiíratta.
    Egyszerűbb lenne simán js-el.

    De akkor azt mondod hogy simán js-el oldjam meg? Persze a php-n kívül:D
    Mutasd a teljes hozzászólást!
  • A képek ellenőrzését nagyon ajánlott szerveroldalon ellenőrizni. Nézz utána például itt.

    A megjeleníteni kívánt összes dolgot (név, méret, feltöltő, stb.) írasd ki az oldal letöltésekor egy rejtett divbe. Innentől a képre kattintáskor elrejted/megjeleníted a divet js-ből, nem kell ajaxozni.


    Szerintem ez sokkal csúnyább mert ha van mondjuk 500 kép akkor a forráskódban 500 sor azzal telik el hogy:
    kepek[0] = "kepek/kep1.jpg";
    kepek[1] = "kepek/kep2.jpg";
    kepek[2] = "kepek/kep3.jpg";
    kepek[3] = "kepek/kep4.jpg";
    ...


    Ha már optimalizálás..
    for ($i = 0; $i <= 500; $i++) { kepek[$i] = "kepek/kep".$i+1.".jpg"; }
    Mutasd a teljes hozzászólást!
  • Mondom, nem szeretnék bele"szakérteni".
    Szerver oldalon mindenképp ellenőrizni kell az inputodat, mert arra semmi biztosítékod nincs, hogy a felhasználó valóban az általad készített JS szűrőn át küldte őket.
    Mutasd a teljes hozzászólást!
  • Mit tanácsolsz, hogy csináljam?
    Mutasd a teljes hozzászólást!
  • Nagyon nem akarok beledumálni, de rossz ötlet, ha (kizárólag) kliens oldalon végzed az ellenőrzést.
    Mutasd a teljes hozzászólást!
  • Sziasztok!
    Csinálok egy honlapot, ahol van egy galéria. PHP-val megcsináltam hogy lehessen feltölteni, illetve meg is lehet jeleníteni. Ellenőrzöm, hogy a képnek a szélessége mekkora, ha túl nagy lekicsinyítem arányosan, aztán ellenőrzöm a magasságát, ha túl nagy lekicsinyítem. Ezt az ellenőrzést js-ben oldottam meg.
    Szóval abban szeretném a segítségetek kérnem, hogy megszeretném csinálni azt, hogy ha valaki rákattint egy képre, akkor a képek fölött jelenjen meg.
    Ezt ajax-al szeretném megkérdezni mivel a felhasználó ki is törölheti a saját feltöltött képét, illetve a moderátor ki is bír törölni egy képet, ha nem odaillő, reklám, stb. Szóval azért szeretném ajax-al megoldani, mert ha valaki rákattint a képre nem szeretném újratölteni az oldalt. Alapból rögtön az első kép jelenne meg fent. Azt hogy fent megváltoztatom azzal lenne egy kis gondom, vagyis hogy úgy kéne-e megcsinálni.
    Tehát amit fogok kérdezni azt most írom le:). Úgy gondoltam el hogy az összes képnek van egy id értéke, és annak az értéke, hogy hanyadik a kép (0-val kezdődik el). Az elején a mysql-ből lekért képeknek az elérési címét, eltárolom egy tömbben így tudom, hogy az a kép melynek az id értéke 0 azaz a 0. kép. (amit tudok hogy valójában az első kép) Így ha rákattintok egy képre akkor csinálok egy js-ben egy függvényt amiben van ajax. A függvénynek kell adni egy értéket hogy hanyadik a kép (első = nulladik ...). Ajax-ban meghívok egy php fájlt ahol GET-tel adok 2 értéket. Egyik az hogy hogyan szűkítse, a másik hogy hanyadik kép ebből. A php fájlban ugyanúgy csatlakozok a mysql-hez és kiszűröm a lehetséges képeket, melyeknek az elérési címét eltárolom egy php változóban. Ebből kikeresem az x-ik elemet (amit átadott az ajax).
    Ezután a megfelelő helyre kiíratom a kiíratom képet (A fenti kép a <div id="kep"></div> között van és getElementById segítségével a megfelelő helyre kiíratom).

    A kérdésem, hogy ez mennyire jó, vagy nagyon túlbonyolítom? Mennyire lehet biztonságos? Van-e jobb megoldás erre?

    Volt egy másik ötletem, amit még ez előtt gondoltam. Most kezdtem el tanulni az ajax-ot e miatt, de szerintem ezzel sokkal jobb megoldani.
    A másik ötletem az lett volna, hogy a php töbmben lévő értékeket, átmásolom a js-ben lévő tömbben (ott is létrehoznék egyet), és mikor rákattintok egy képre akkor onClick hatására, ellenörzöm hogy hányadik kép, és ahányadik a js-ben lévő tömb értékét fogom adni a fenti kép elérési útjának értékeként.

    Szerintem ez sokkal csúnyább mert ha van mondjuk 500 kép akkor a forráskódban 500 sor azzal telik el hogy:
    kepek[0] = "kepek/kep1.jpg";
    kepek[1] = "kepek/kep2.jpg";
    kepek[2] = "kepek/kep3.jpg";
    kepek[3] = "kepek/kep4.jpg";
    ...

    És még az lenne a kérdésem hogy a második ötlet rosszabb-e mint az első. Szerintem igen.

    Előre is köszönöm mindenkinek a válaszát, ennek a jó hosszúra sikerült kérdésre
    Mutasd a teljes hozzászólást!
abcd