Přihlásit se

Joomla 5.2.2 Security & Bugfix Release

Joomla 5.2.2 je nyní k dispozici. Jedná se o bezpečnostní vydání pro Joomla 5.x.

Proměnná v exterením php souboru

13. zář 2013 21:54 #111014
Proměnná v exterením php souboru od Kulich
Začátečník
Mám ext. php soubor, ve kterém pomocí funkce ImageTTFtext (a dalších) vytvořím obrázek s textem. Text je ale proměnný, takže poslední hodnotu vkládám klasicky, tj. $znak; pokud takto vytvořený soubor spustím mimo Joomlu je to OK, pokud jej použiji v Joomle, proměnná $znak se tváří jako prázdná (ale není) a samozřejmě se nic nezobrazí. Když proměnnou $znak nahradím stringem, např "abc", tak je to v pořádku. V čem by mohl být problém? Předem díky za každou radu.

13. zář 2013 22:03 #111015
Odpověď od Cony
Moderátor
No spíše dejte ukázku kódu, který Vám nefunguje (ne celý, jen tu podstatnou část).

14. zář 2013 07:49 #111053
Odpověď od Kulich
Začátečník
Jedná se o toto:

ImageTTFText($podklad, rand(25,30), rand(-40,40), 20, 40, $barva, "./arial.ttf", $znak[0]);

přičemž $znak[0] obsahuje číslo nebo písmeno

pokud použiji výše uvedený řádek tak, jak je napsán, v Joomle to nefunguje (jakoby proměnná $znak[0] byla prázdná; mimo Joomlu to jde bez problémů. Pokud ale v Joomle místo $znak[0] napíši "a" je to v pořádku.

Výše uvedený řádek používám v souboru obrazek.php; ten je v php souboru f1.php jako
<img src='obrazek.php' width='220' height='51' alt='Kontrolní obrazec' />
Soubor f1.php vkládám do Joomlácké stránky standardně: <?php include "f1.php"; ?>

14. zář 2013 23:19 #111070
Odpověď od Cony
Moderátor
No dobře, ale kde definujete tu proměnou $znak?

15. zář 2013 07:38 #111076
Odpověď od Kulich
Začátečník
Proměnnou $znak definuji v f1.php, ukládám do $_SESSION[znak]=$znak a v souboru obrazek.php ji mám jako $znak=$_SESSION[znak]. Mimo Joomlu to funguje bez problémů, v Joomla se jeví jako prázdná. Napíš-li v obrazek.php místo předchozího $znak="abc" je to v pořádku.

15. zář 2013 20:55 #111087
Odpověď od Cony
Moderátor
A máte tam include na ten soubor f1.php?
"V Joomle" budete zřejmě v nějaké funkci, a v kontextu té funkce nebude ta proměnná známá. šahejte tedy přímo na tu session proměnou.

Powered by Fórum