A következőt szeretném:
Van egy saját modulom, saját tartalomtípussal, sql lekérdezéssel stb...
Szeretnék egy eseménynaptárat kiteni a képernyőre, amely egy html táblázaton (table) belül van. Pl. Oszlop nap neve, sor az óra. Itt a felhasználó checkbox és select form elemeket jelölhet ki. A táblázatot a modulnak kell előállítani.
A hook_form() -nak $form['..'] elemeket tudok csak átadni?
Az sql lekérdezés eredményét szeretném szépen php-val generált táblázatban megjeleníteni.
Mi az ajánlott megoldás ebben az esetben?
Drupal verzió:
Fórum:
A core-ban van erre példa
?q=admin/user/user
?q=admin/content/node
további infó
csak ezt ne használd theme_table_select_header_cell()
Elvileg ha jól láttam két
Elvileg ha jól láttam két megoldás van:
a, a form elemeket az output létrehozásakor hozzáadom a theme('table', $header, $rows);-hoz
b, létrehozok egy theme_...() függvényt a form elemek megjelenítéséhez.
Az első talán egyszerűbbnek tűnik, de nem biztos, hogy meglehet csinálni...
Egyelőre létrehozok egy smink theme_...() függvényt az biztos működik.
Köszönöm a példákat.
-------------------------------
http://www.realdream.hu
Kicsit komplikált a form kezelés...
Megcsináltam, de megint túl bonyolult és munkaigényes...
Ha van egy sql lekérdezésem ami meghatározza a táblázat szövegét és a form elemeket is, akkor azt két függvényben kell futtatni kétszer?
1. Form elemek létrehozása,
2. Téma (táblázat elkészítése)
Ez duplán terheli a szervert, és mi van ha közben az adatbázis megváltozik?
Egyszer szeretném futtatni a while ($node = db_fetch_object($lekerdezes1)) ciklust és ezen belül a táblázatot feltölteni form elemekkel és szöveggel... ez lehetséges?
A működő, de bonyolult megoldásban ezeket a függvényeket használtam:
-------------------------------
http://www.realdream.hu
mi a problema?
mit kell ketszer futtatni?
az elso fuggveny beolvassa az adatokat a masodik fuggveny meg megjeleniti. Minden rendes form igy van keszitve.. A masodik fuggvenyt pedig barki felulirhatja a sminkjeben ha mas megjelenitest szeretne..
Nemcsak a beviteli mezők,
A sminkben való felülírás nem szükséges, mert ez egy egyedi fejlesztés ami nagy adatbázisból dolgozik és a sebesség az első szempont. Nemcsak a beviteli mezők, hanem a táblázat és az abban található szövegek (ezekhez kell a theme, mert a theme nélkül nem lehet egy formot táblázatban megjeleníteni) is adatbázis lekérdezés alapján készülnek. Az adatbázis nagyon nagy és az sql lekérdezés elég bonyolult. Ha külön kell a formot és a hozzá tartozó szövegeket és html elemeket kezelni, akkor
milyen lehetőség van paramétereket és adatokat átadni a hook_form, theme és submit függvényeknek és ezek között?
Erre használjam a $_SESSION['..']-t?
-------------------------------
http://www.realdream.hu
nem
form, theme és submit fuggvenyek kozott az adatok atadasa automatikus.. szoval probald ki es ha elakadsz akkor szolj..
tokmindegy, hogy egy fuggvennyel oldasz meg valamit, vagy szetbontod a kodot ket fuggvenyre (feldolgozas, megjelenites), nem igaz? nem latom miert panaszkodsz a sebessegre..
Pl. heti naptár és
Ha kétszer kell futtatni az sql lekérdezést, az lassítja, ezt akarom elkerülni.
Pl. heti naptár és időpontokra lehet jelentkezni checkbox-ok bejelölésével.
a, ..._form(): Sql lekérdezés leválogat pl. vid, időpont, nap neve, esemény neve... tehát meghatározza a form elemeket amiket be lehet jelölni:
b, theme_..() a témában ezeket a megfelelő napokhoz és a megfelelő órához kell kiírni egy táblázatban, hogy vigyem át a form elemhez tartozó nap nevét és időpontját?
-------------------------------
http://www.realdream.hu
hogy
ha megnezel egy peldat, eleg egyertelmu. a $form valtozot kell hasznalni..
Köszönöm szépen a segítséget,
Köszönöm szépen a segítséget, de nem tudok a változónak értéket adni...
Tehát pl.
A $form['felhasznalo']=$uid nem működik.
Hogy tudom az $uid változót átküldeni a _form, theme_, _submit függvényekbe és ott hogy tudom lekérdezni?
Egy példa sokat segítene
-------------------------------
http://www.realdream.hu
#value típust kell rá beállítani
http://api.drupal.org/api/file/developer/topics/forms_api_reference.html...
-
clear: both;