ugrás a tartalomhoz

Archívum - Jún 22, 2011 - Fórum téma

Tömb elemeiből linkek, miért különbözik?

Hellhammer · 2011. Jún. 22. (Sze), 16.00
Üdv!

"találjunk ki magunknak gyakorlófeladatot" státuszban: olyan képgalériát akartam csinálni, hogy látsz egy képet, fölötte linkek, hogy link1 link2 stb... rá kattintva a megjelenített kép változik.
A feladat sikerült, működik is, meg minden, de valamit nem értek:
Nem írom le az egészet, csak a lényeg: mappa tartalmának lekérése, majd átadása tömbbe: sorszám + fájlnév
Tehát:
1 DSC0166.jpg
2 Dsc0234.jpg
stb..
Magukat a linkeket úgy gondoltam, hogy:

echo '<a href="eleresi/ut/'.$tomb[1].'">'.$tomb[0].'</a>'.'-';
tehát úgy jelenik meg, hogy 1-2-3-4-5 ... és a számokra tudsz kattintani.

Ha viszont azt írom, hogy:

echo '<a href="eleresi/ut/'.$tomb[1].'">'.$tomb[1].'</a>'.'-';
Akkor úgy jelenik meg, hogy: DSC0321.jpg-DSC0121.jpg-stb , tehát magukat a fájlneveket írja ki linkké.

Nekem "ránézésre" a két megoldás nem különbözik egymástól elviekben, de mégis különböző módon jelenítette meg:
Az első eset:1-2-3 egyetlen hosszú sorban írta ki, és vízszintes scrollsávot adott.

Viszont a második esetben a böngésző ablakának szélességének megfelelően tördeli a "szöveget", 100 kép esetén teljes képernyőben 5sor, ha a firefox ablakát kisebbre méretezem, akkor szépen okosan több sorban jeleníti meg...

Valaki esetleg tudja, mitől van ez?
 

Bejelentkezési rendszer megvalósítása

rockybro · 2011. Jún. 22. (Sze), 13.43
Üdv!

Egy loginrendszeren dolgozom, amely az automatikus bejelentkezés funkcióval is fel lenne vértezve. Szeretném az egészet a lehető legoptimálisabban elkészíteni, azaz ne okozzon felesleges terhelést, de legyen kellően biztonságos. Ezzel kapcsolatban merültek fel megvalósításbeli kérdéseim.

1. Munkamenetkezelés: fájlokon vagy adatbázison alapuljon?
Több helyen találkoztam már azzal az ötlettel, hogy a PHP alapértelmezett fájlokon alapuló munkamenetkezelését átültetik adatbázisra.
(Van mondjuk egy sessions tábla, egy sor egy munkamenet adatait tartalmazza, az oszlopok pedig a munkamenet-változók plusz a session id. Így ha van a látogatónak session_id-je, akkor oldalletöltésenként legalább egy sql-lekérdezésre van szükség a munkamenethez tartozó adatok lekérdezése miatt; sőt ha az adatbázisban szeretnénk meghosszabbítani a munkamenet lejárati idejét, akkor 2 lekérdezésre is szükség lehet oldalletöltésenként.)
Ezt a két módszert (adatbázison illetve alapértelmezetten fájlokon alapuló) szeretném összehasonlítani, amire pedig konkrétan kíváncsi lennék:
(a) Melyik produkál gyorsabb sebességet, és ez hogy változik látogatottságtól függően (már ha változik)?
(b) Az adatbázis vagy a fájlkezelés(?) adja meg előbb magát, ha a terhelés növekedik? (nyilván nem néhány látogatóra gondolok)

2. Automatikus bejelentkezés: 1 cookie vagy 2 cookie?
Automatikus bejelentkezés nélkül könnyen elboldogultam: sikeres bejelentkezéskor indítottam egy sessiont, belepakoltam a szükséges adatokat a felhasználóról, plusz némi ellenőrző adatot (user agent + lejárat).
Amikor az automatikus bejelentkezésen törtem a fejem, az első ötletem az volt, hogy mért ne hosszabbítanám meg egyszerűen a session cookie lejáratát (ne a böngésző bezárásakor, hanem mondjuk x nap múlva járjon le), a munkamenet pedig ugyanazokat az adatokat tartalmazná, mint automatikus bejelentkezés nélkül. Ez nem tudom mennyire elegáns, megszokott megoldás, mondjátok meg Ti!

ul / li behúzás probléma

ensomhet · 2011. Jún. 22. (Sze), 13.05
Üdv mindenki!

Hosszas próbálgatás és google használat után sem sikerült megoldanom egy problémát. Személtetem:
http://debrock.hu/hirek/131/uj-szolgaltatas-a-rock-ness-ben
http://debrock.hu/hirek/81/iii-muszak-fanzine-no-18
Az első linknél olyan formában van az unordered listem, amilyenben szeretném, a másodiknál viszont a pirosan keretezett részben rácsúsznak a pöttyök a képre.

A rá vonatkozó css rész mindössze ennyi:

ul {
	list-style: disc outside;
	margin: 0;
	padding: 0 0 0.5em 16px;
}
Próbáltam inside + text-indent variációkat, padding állítást, de nem jutottam eredményre, mivel általában az első (jó) változat is elcsúszott jobbra. Vagy esetleg a képet kéne másképp odatenni? (most sima img elem, align=left, és inline van neki adva egy 10px jobb padding)

Bármi ötletet vagy linket szívesen fogadok, előre is köszönöm!
 

Hírlevél küldő felület.

aky22 · 2011. Jún. 22. (Sze), 10.54
Hali! Épp egy hírlevélküldőn ügyködöm és az lene a kérdésem, hogy a formot hogy tudom úgy kialakítani, hogy egy gombal a kiválasztott e-mail címeket berakja a címzett mezőbe??? Úgy nézne ki, hogy oldalt lennének egy "dobozban" a címek és egy ilyen : >>
gombal lehetne átrakni a címeket. Sejtésem szerint a buttonnak kéne egy onclick esemény de nem vagyok benne biztos és azt se tudom h azt a dobozt mivel csináljam meg.
 

IP input box...

NosnOsnoS · 2011. Jún. 22. (Sze), 10.17
Hali!
Az lenne a kérdésem,hogy hogyan lehet IP input boxot csinálni.
És az úgy működne,hogy A gép kitölti az ip címhelyét(ponttal,számmal )és a felhasználó nem tud hozzányúlni.
Tehát minden megvan (form post)Csak ez kéne.
Előre is köszi mindent!
 

Adatmódosítás PHP-ből?

H.Z. v2 · 2011. Jún. 22. (Sze), 08.43
Adott egy módosítandó elem az adatbázisban. Betöltöm a módosítható adatokat és kirakom a user elé. User átír benne amit akar és megnyomja az OK gombot.
Program előkeresi a megfelelő sor(oka)t és módosítja őket. Ö... igen... és mi van, ha közben egy másik user ugyanezeket az adatokat már módosította?
Ha nem webről lenne szó, akkor az adatok betöltésekor lockolnám őket (húsz éve, négyfelhasználós rendszeren működött :-) ), de itt csak addig tart a kapcsolat a klienssel, amíg letöltődik az oldal (nem használok perzisztens adatbázis kapcsolatokat), így ha lockolnám is, a lap letöltésének végén a lock megszűnik.

Ilyenkor mi lenne a kulturált megoldás?
Első menetben azt találtam ki, hogy egy timestamp mezőt használok on update current_time-mal. Mielőtt módosítanám, lock, kiolvasom ezt a mezőt, ellenőrzöm, hogy a memóriában lévő értéke egyezik-e a frissen kiolvasottal, ha nem, hiba, ha igen, update, commit, unlock.
Másodikra, hogy timestamp, de triggerből update-elve, mert két timestamp mezőre nem tehetek default/on update-t. De ez sem jó, mert a timestamp csak másodperces bontással tárolódik legnagyobb bánatomra. Marad, hogy mondjuk egy tinyint mező, triggerből automatikusan növelve, túlcsordulás esetén nullázva. Kérdés, hogy ez mennyire számít kulturált megoldásnak? (megfordult a fejemben, hogy checksumot gyártani, de az túlságosan megnövelné a tárolt adatok mennyiségét)

ui: bevallom, most nem vittem túlzásba a keresgélést, este folytatom a kutatást... A PHP/Mysql könyvemben (Hogyan építsünk webáruházat?) nem találtam konkrét megoldást erre - persze lehet, hogy felületes voltam.