- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Rap, Hip-hop 90'
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Parci: Milyen mosógépet vegyek?
- btz: Internet fejlesztés országosan!
- NASsoljunk: ZyXEL NSA-310 és az FFP
Új hozzászólás Aktív témák
-
pisti@
újonc
-
pisti@
újonc
-
pisti@
újonc
Sziasztok!
Honlapom szerkesztéséhez keresek, smartyban jártas, webmestert!!!
-
skrabi
senior tag
Helo!
azt szeretném kérdezni, hogy kell beilleszteni .vbs kiterjesztésű scriptet a honlapra, hogy online lefusson?
sejtem, hogy nem a legjobb helyre írtam, de nem találtam más webszerksztéssel kapcsolatos topikot...
-
burgatshow
veterán
válasz
nemmind1_85 #20 üzenetére
Azt en is nezegettem korabban, de amikor szoba kerult, akkor annyira keves ido allt a rendelkezesemre, hogy inkabb hanyagoltam az akkori projektben, azota meg nem foglalkoztam vele, valahogy mindig kimaradt.
De ettol fuggetlen a johet majd a cikk.
-
Az nekem is jól jönne.
Most éppen nézegetem mit is tud ez a ZF, mert amúgy már egy éve kb csinálom a saját frameworkömet, kisebb nagyobb sikerekkel - itt azon van hangsúly, hogy könnyen kezelhető legyen, gyorsan lehessen pl relációs adatbázist varázsolni - ez a ZF meg elsőre elég bonyolultnak tűnik...De biztos jó, hisz elég sokan használják, s az enyém a közelébe se ér
nemmind1_85: Grat a cikkhez!
Már alig vártam, hogy végre valaki írjon webprogramozásról.
-
Protezis
őstag
válasz
burgatshow #19 üzenetére
Vizsgaidőszak után ( jövő hét után ) lehet írok egy bevezető jellegűt, aztán ha lesz rá igény, esetleg folytatása is lesz.
-
nemmind1_85
csendes tag
válasz
burgatshow #18 üzenetére
bocs, javítottam.
Amúgy a keretrendszerek közül inkább a codeigniterrel foglalkoztam, erről majd fogok írni, ha van rá érdeklődés.
Egy ZF cikk engem is érdekelne -
Panther
HÁZIGAZDA
Ez biztosan helyes? {$smarty.post.page} ugyanaz, mint $_GET['post']
-
Protezis
őstag
Bele lehet rakni a smarty-t a Zend-be, de nem ajánlom. Egy évig smartyztam, csak probléma volt vele, semmi előnyt nem tapasztaltam. Indokaim:
- Sok - a Zend_View-ba épített - lehetőség körülményesen, vagy egyáltalán nem használható smartyval.
- Az alkalmazás logikát nélküle is szét lehet választani, erre gyönyörű példa a ZF ( és még lehet lehet további rétegeket is használni ). Úgyhogy ez egyáltalán nem előny.
- Sok fejlesztőeszköz nem támogatja, legjobb esetben csak kódszínezést érsz el velük. (Ecplise plug-in van, jó régi, nem működik; Zend Studio szintúgy, PHPed színezi)
- Rengeteg esetben kapsz smarty hibát, ami persze nem a smarty hibája, csak épp irtóra megnehezíti a debuggolást.
- Plusz CPU idő.
- Ha kicsit "furmányos" dolgot akarsz művelni, felkötheted a gatyát. Olyan apróságról beszélek, mint amikor mondjuk két változó értékének konkatenációja adja az elérendő elem kulcsát egy tömbben, és hasonlók.Egy MVC mintát használó keretrendszerbe értelmetlen dolog belerakni bármelyik template rendszert.
-
tgabi333
aktív tag
Köszi, jó írás, tetszik
csak annyi lenne a megjegyzésem, hogy nem fejlesztői eszköz, hanem [fejlesztői] könyvtár.
-
Blaise
veterán
Jó cikk
Engem nagyon érdekelne egy cikk a mai PHP keretrendszerek összehasonlításáról (Zend Engine, Cake PHP stb)
-
burgatshow
veterán
válasz
nemmind1_85 #8 üzenetére
Szia!
Grat az íráshoz. Nyilvánvaló, hogy aki még nem dolgozott Smarty-val, az fel sem tudja fogni, hogy mekkora erő és hatalom van ebben a rendszerben.
Én is készülök írni egy írást, csak az a saját form építő pluginom-ról fog szólni.
-
ddekany
veterán
válasz
nemmind1_85 #8 üzenetére
Na, szerintem erről érdemes lenne írni a cikkben, annál is inkább mert enélkül a példák is hibásak. Amiről még érdemes lenne írni, hogy default_modifiers=array("escape") esetén hogy lehet escaping nélkül kiírni dolgokat (mikor egy változó szándékosan HTML-t tartalmaz), ill. el lehet-e elkerülni dupla escape-olást (mikor a template szerzője nem tudta, hogy nálad automatikusan escape-olás van, ezért ${...|escape}-t használt)... ezek a tipikus escape-s template szívások Smarty-től függetlenül.
-
nemmind1_85
csendes tag
Utána néztem a dolognak, természetesen van rá megoldás:
van egy escape nevű módosító:php:
$szoveg="<asdf&asdf>";
$smarty->assign("szoveg",$szoveg);
tpl:
{$szoveg|escape}
kimenet:
<asdf&asdf>hogy ne kelljen mindenhova kiírni az "|escape" szöveget, megadhatjuk automatikus módosítónak ezt a php-ben
$smarty->default_modifiers=array("escape");
ja és bug vagy nem bug helyett inkább bug vagy feature
-
ddekany
veterán
válasz
nemmind1_85 #5 üzenetére
Nekem az a határozott véleményem, hogy ez hiba, mivel egy template engine-ről van szó, aminek feladata nagy részben az, hogy változók értékeit szúrja be valamibe. Tehát azt elvárni, hogy manuálisan oldja meg az ilyen-olyan encoding-ot (pl. HTML kódolást) valaki, minden egyes beszúrásnál, ostobaság, és felesleges biztonsági kockázat (mert sokan sokszor ki fogják felejteni). Az, hogy ez mégis így van rengeteg template nyelvben egyszerűen annak köszönhető, hogy nem tudnak elrugaszkodni a készítők az általánosabb célú nyelvektől. DE, lehet, hogy Smarty-nak van erre megoldása, csak akkor kimaradt a cikkből.
Ami a többféle formátumot illeti, közölni kell a template engine-el hogy melyik template kimenete milyen formátumú, és kész. Pl. az alapértelmezés HTML, ha meg nem HTML-t generálunk, akkor meg kell adni template elején a formátumot... ilyesmik.
Az SQL injection egy jó példa arra, hogy hova vezet, ha nem próbálja megoldani a nyelv vagy a programozói könyvtár automatikusan az ilyen alacsony szintű problémákat. Soha sehol senkinek nem szabadott volna string összefűzéssel előállítani SQL parancsokat (OK, kivéve néhány extrém esetben), csak sablonokkal, pl ilyesmi: sql("SELECT id FROM something WHERE cat = ?", catVar). Itt is a sablon dolga, hogy biztosítsa az érték SQL szintaxisú "idézését", már ha egyáltalán valaha létrejön az SQL utasítás szövegként... lényeg hogy nem neked kell arra figyelni, hogy olyasmiket írjál, mint sql("SELECT id FROM something WHERE cat = " + sqlEsc(catVar)), ahol az sqlEsc-et nem ér kifelejteni.
-
Komondor
csendes tag
Azt azért mindenképp szükségesnek tartanám hozzátenni, hogy bár a sablonrendszer használata köztelező mindazoknak akik nem akarnak felesleges pluszmunkát maguknak, de nem a Smarty az egyedüli megoldás.
Ha a webdesigner megbízható, nem külsős, akkor maga a php is tökéletesen jó sablonnyelv, hiszen eredetileg annak készült. Kódolási stílus és fegyelem kérdése, hogy a logikát és a megjelenítést elválasszuk egymástól.
-
nemmind1_85
csendes tag
Szerintem ez nem hiba, ugyanis smarty-val nem csak html-t tudsz előállítani (bár alapvetően ez a feladata), de ha mégis ezt akarsz, akkor neked, vagyis a php programozónak kell gondoskodni a változók html kódolásáról is.
Ez szerintem hasonló probléma, mint amikor egy formon adsz meg adatokat, amit a db-be akarsz írni. Itt se azon kell filózni, hogy a html, php hibája hogy bele lehet írni sql parancsokat is, hanem a programozónak kell gondoskodni az sql injection védelemről. -
MrSealRD
veterán
Üdv!
Jó kis ismertető...és a folytatásba szánt téma is felkeltette az érdeklődésem. Kíváncsian várom.
Üdv:
sutszi -
ddekany
veterán
Csak gyorsan átfutottam, szóval lehet hogy csak nekem maradt ki valami... de mintha a beszúrt értékek nem lennének HTML-kódolva ("<"-ből "<", stb). Ha pedig így van, az elég súlyos hiba, és biztonsági rés. Amúgy template engine-knél ez tipikus tervezési hiba, hogy nem az az alapértelmezés, hogy HTML-kódolnak (HTML encode, HTML escape... ki hogy hívja). Gondolom a Smarty sem kivétel.
-
zhagyma
őstag
Jó kis írás. Annak idején sohasem volt időm / kedvem "belekukkantani" a smarty-ba, ezért számomra hasznos írás volt. Főleg most, hogy újra php-t kell használnom egy projekt erejéig.
-
szimeonov
tag
Eloszor grat a hasznos irashoz!
Egyenlore csak at futottam, de erdekesnek hasznalhatonak tunik.
Mi a munkaban a Zend Framework keretrendszert hasznaljuk.
JavaScript-et sajatokat fabrikaltunk, de az csak ganyolas volt aztan nemreg tertunk at jQuery-re.
Biztos bele lehet integralni a Smarty-t is a ZF-be.
En meg egy jQuery-s cikket szivesen fogadnek.
Új hozzászólás Aktív témák
Hirdetés
- Építő/felújító topik
- Megérkezett a Google Pixel 7 és 7 Pro
- Milyen belső merevlemezt vegyek?
- Hitelkártyák használata, hitelkártya visszatérítés
- Milyen billentyűzetet vegyek?
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Call of Duty: Black Ops 6
- Milyen videókártyát?
- Router gondok
- Otthoni hálózat és internet megosztás
- További aktív témák...
- ROG Maximus Z790 Dark Hero
- Új MSI KATANA 17 Gamer Tervező Laptop 17,3" -35% i7-13620H 10Mag 16/1TB RTX 4060 8GB FHD 144Hz
- Apple Iphone 13 128gb csillagfény színű OLCSÓN . Csere/beszámítás
- OnePlus Pad 2 + OnePlus Pad 2 billentyűzet + Extrák
- AKCIÓ!!! GAMER PC: Új i5-14400F +RTX 4060/5060/4070/5070 +Új 16-64GB DDR4! GAR/SZÁMLA! 50 FÉLE HÁZ!
- Kaspersky, McAfee, Norton, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5800X 32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- Xiaomi Redmi Note 11 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Csere-Beszámítás!AMD Asztali számítógép PC Játékra! R5 5600/ RX 6700XT 12GB / 16GB DDR4 / 500GB SSD
- Újszeru GIGABYTE G5 - 15.6" FullHD 144Hz - i7-13620H - 48GB - 1TB - RTX 4050 - Win11 - 1,5 év gari
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged