Přihlásit se

Joomla 5.1.0 a Joomla 4.4.4 (17 dub 2024)

Dnes byla uvolněna nová verze Joomla 5.1.0, společně s Joomla 4.4.4. Tato verze přináší spoustu nových funkcí, vylepšení v oblasti bezpečnosti a kódu a díky těmto vylepšením i vyšší rychlost.

Volání funkce

30. srp 2015 16:49 #123229
Volání funkce od Ernst
Joomla Expert
Mám ve funkci tento kód:
$den=date('w') ;
$hodina=StrFTime("%H:%M", Time());
foreach ($result as $v1) {
$v1->field_95='1';
switch ($den){
case 0 ;
if ($pole_casu[$v1->field_93] < $pole_casu[$v1->field_94]){if ($hodina>=($pole_casu[$v1->field_93]) and ($hodina<=($pole_casu[$v1->field_94]))){$v1->field_95='0';};}
else {if ($hodina>=($pole_casu[$v1->field_93]) and ($hodina>=($pole_casu[$v1->field_94]))) {$v1->field_95='0';};};

};
}

Když si ho chci dát do funkce:

$den=date('w') ;
$hodina=StrFTime("%H:%M", Time());
foreach ($result as $v1) {
mojeotevreno($v1);

function mojeotevreno(&$v1)
{
$den=date('w') ;
$hodina=StrFTime("%H:%M", Time());
$v1->field_95='1';
switch ($den){
case 0 ;
if ($pole_casu[$v1->field_93] < $pole_casu[$v1->field_94]){if ($hodina>=($pole_casu[$v1->field_93]) and ($hodina<=($pole_casu[$v1->field_94]))){$v1->field_95='0';};}
else {if ($hodina>=($pole_casu[$v1->field_93]) and ($hodina>=($pole_casu[$v1->field_94]))) {$v1->field_95='0';};};

napíše mi to:
Call to undefined function mojeotevreno()

Kde dělám chybu?

30. srp 2015 20:23 - 30. srp 2015 20:28 #123231
Odpověď od H13
Admin
Ahoj, zkus tu funkci dát mimo foreach.

např.:

function ahoj() {
echo "ahoj";
}
foreach ($x as $k => $v) {
ahoj();
}

Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook

31. srp 2015 00:03 #123232
Odpověď od Ernst
Joomla Expert
i když tam vložím tento jednoduchý případ, tak to stále píše:
Fatal error: Call to undefined function ahoj()

Upravuji zakoupený modul. Nemusí být všechny funkce někde nadefinovány?

01. zář 2015 09:05 #123261
Odpověď od Ernst
Joomla Expert
samozřejmě v tom příkladu byla funkce mimo forearch, jen mi vypadla řádka:
$den=date('w') ;
$hodina=StrFTime("%H:%M", Time());
foreach ($result as $v1) {
mojeotevreno($v1);
}

01. zář 2015 13:39 #123262
Odpověď od Cony
Moderátor
No záleží v jakém místě máte ten zápis? Nemáte ho zase v objektu? Je ta funkce mojeotevreno definována jako globální funkce, metoda objektu, nebo lokální funkce uvnitř jiné funkce? Opravdu si projděte základy PHP, ta hláška znamená jednoduše že voláte funkci, kterou v tom místě PHP nezná.

01. zář 2015 17:32 #123265
Odpověď od Ernst
Joomla Expert
Ve třídě class FrontendModelResults extends LoveFactoryFrontendModelList
mám několik public a protected funkcí. z jedné protected funkce potřebuji zavolat jinou funkci, která vráti výsledek

Powered by Fórum