[ peromalosutra @ 17.03.2011. 19:23 ] @
Imam veoma cudan problem pa me zanima moze li mi iko razjasniti situaciju na koju sam naisao, jer ja nemam logicnog objasnjenja. Dakle trebam da modifikujem jednu Joomla komponentu, com_rapidrecipies, tacnije samo jedan njen view (viewrecipe). U "kontroleru" funkcije nalazim case koji se odnosi na view koji zelim da mijenjam: Code: case 'viewrecipe': $recipe_id = trim(intval( JRequest::getVar('recipe_id', "" )) ); rr_runSQL("UPDATE #__rr_recipes SET hits = hits+1 WHERE recipe_id=" . mysql_escape_string($recipe_id)); rr_EchoOneRecipe($recipe_id); break; Vidim da se poziva funkcija rr_EchoOneRecipe i super, to je ono sto meni treba. Medjutim sad dolazi zanimljv dio. Ove funkcije nema nigdje na serveru! :) Tj. negdje naravno mora biti cim se uredno poziva i ispisuje kod, ali grep pretraga cijele joomla instalacije ne nalazi nikakav rezultat: Code: $ egrep "function.*rr_EchoOneRecipe" -R . Da bih bio 100% siguran da se upravo taj gorenavedeni case izvrsava, uradio sam malo printf debugovanja sa: Code: case 'viewrecipe': $recipe_id = trim(intval( JRequest::getVar('recipe_id', "" )) ); rr_runSQL("UPDATE #__rr_recipes SET hits = hits+1 WHERE recipe_id=" . mysql_escape_string($recipe_id)); echo 'calling function'; rr_EchoOneRecipe($recipe_id); echo 'function ended'; break; I ovaj tekst se ispise uredno. Takodje, pretragom prema HTML kodu koji funkcija rr_EchoOneRecipe generise sam nasao funkciju pod imenom "showRecipe1" i ispostavilo se da se ova funkcija zapravo poziva umjesto rr_EchoOneRecipe. Dakle, pozove se rr_EchoOneRecipe, a izvrsi se showRecipe1. Moze li mi neko reci sta propustam i kako je ovo moguce? Vjerovatno propustam nesto veoma ocigledno, ali u ovom trenutku mi nista ne pada na pamet. Pozdrav, Ivan |