email. adresa získaná z $_POST -nevyhovující tvar

Ondra
16. srp 2013 01:05 #110078
Jsem Joomla začátečník. Pokud mám formulář s textovým polem, vyplním do něj text, který splňuje regulární výraz emailové adresy, a odešlu ho (metodou POST), tak když chci tento řetězec získat z pole $_POST, tak nedostanu očekávaný řetězec (např. Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení musíte mít povolen Javascript.), nýbrž dostanu nějaký javascriptový kód, nejspíše na zobrazení tohoto emailu jakožto aktivního prvku pro kliknutí. Jak přemluvit Joomlu, abych z $_POSTu dostal holý string, a nikoliv javascriptový kód?

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Cony
16. srp 2013 01:58 #110079
A jak to děláte teď a kde a jak to kontrolujete?

Ten nesmyslný Javascriptový řetězec je ochrana Joomly proti spamu - všechny emailové adresy ve výstupu se takto zakódují. Pokud si vypnete Plugin Email Cloaking uvidíte čisté maily.

Ale nemá to co dělat s POST (na ten mimochodem nešahejte přímo, ale pomocí JRequest nebo lépe JApplication::input), je to jen otázka výstupu.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:05 #110088
Ale jak to mám vyřešit, když chci mít Cloaking zapnutý? Když beru hodnotu mail. adresy např. takto: JRequest::getVar("mailField"), tak take dostanu ten javascript. kód...

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:10 #110089
ptal jsem se na IRC Joomla foru a pry je to asi nejaky bug...

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Cony
16. srp 2013 15:20 #110090
Myslím že bude spíš bug u Vás. Jinak by nefungovala třeba registrace.
Jak ten formulář vykreslujete, a kde? Je to někde k vidění?

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:25 #110091
Vytvářím vlastní modul do Joomly. Jde o php soubor, který je uložen ve standardním adresáři 'tmpl', v tom souboru vykresluji formulář natvrdo fomocí html tagů <form>, <input> a podobně...

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:27 #110092
Takže nepoužívám Joomla API, což je chyba

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
16. srp 2013 15:38 #110094
To je chyba, ale jestli se jedná jen o formulář, není jednodušší použít již hotovou formulářovou komponentu, nebo se alespoň podívat do kódu (případně dokumentace), jak jsou formuláře v Joomle dělané?

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:47 #110095
Pracuji na formuláři, který má takové chování, že když uživatel klikne třeba na checkbox, tak se zobrazí pod ním další input elementy, nebo když člověk přepíná mezi radiobuttony, tak se také přepíná zobrazení příslušných podpoložek, např typická věc: člověk klikne na "adresa doručovací je různá od adresy fakturační", tedy se zobrazí další pole pro zadání daných údajů. Asi by to šlo i pomocí API, jistě jsou tam nějaké třídy představující input elementy a jejich metody, které je třeba umí skrýt/zobrazit. Ale neměl jsem čas to prolézat. Joomlu vidím asi 14 dní.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
16. srp 2013 15:55 - 16. srp 2013 15:56 #110096
Já vás nechci od vaší činnosti nijak zrazovat, ale stačilo si vybrat nějaké rozšíření na Joomla Extensions Directory , například takový RSForm! . Umí to o čem píšete, tady to je česky v článku Dynamický seznam formuláře . A další články o této komponentě .

Jestli nehodláte v budoucnu pro Joomlu programovat, zdá se mi zbytečné ztrácet čas něčím, co je hotovo.

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Ondra
16. srp 2013 15:59 #110097
Děkuji, tak jsem si alespoň procvičil prsty na klávesnici. I hlavu.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.