Autor Zpráva
jirkasak15
Profil
Ahoj, potrebuju poradit.

Vytvářím se vlastní CMS a narazil jsem na problém, kdy chci box ( ve sloupci pod menu ), který by měl obsahovat php code, konkrétně by měl volat php funkci kterou mám vytvořenou v ./funkce/soubor.php. Když nechám z MySQL vypsat název boxu a obsah, ve kterém je <?php _funkce(25); ?> nic se neděje. Jak to vyřešit?

Dík.
Zechy
Profil
A máš před výpisem té funkce include toho souboru s tou funkcí? Popřípadně, jestli má funkce místo echo return musíš ji nechat vypsat.
jirkasak15
Profil
Zechy:
Ano mám tam require ...., zkoušel jsem i jednoduchy echo <?php echo "LOL"; ?> a nic to nevypsalo!
Zechy
Profil
Ukaž ten tvůj kod na výpis z DB.
jirkasak15
Profil
Funkce pro výpis:
*když z DB nechám vypsat normální text s HTML vše je ok.

function _templateBox($sloupec = 1){
    $conn = mysql_connect(_server, _user, _password);
    mysql_set_charset("utf8");
    mysql_select_db(_name);
    
    $get_boxes = mysql_query("SELECT * FROM boxy WHERE sloupec = ".$sloupec." AND `zobrazit` = 1 ORDER BY poradi");
    if(mysql_num_rows($get_boxes) == 0){
        echo "<i>V tomto sloupci nemáte umístěný žádný obah, to můžete změnit v <a href=\"admin\">Administraci</a>.</i>";
    }
    else{
        while($boxes = mysql_fetch_array($get_boxes)){
            echo "<div class=\"template-boxes-top\"></div>\n";
            echo "<div class=\"template-boxes-middle\">\n";
            echo "<h1>".$boxes['titulek']."</h1>\n";
            echo "".$boxes['obsah']."\n";
            echo "<div class=\"template-boxes-bottom\" ></div>\n</div>";
            
        }
        
    }
}


A tohle nechávám vypisovat:

Jako takovou třešničku bych jen dodal, že Frank Pearce, víceprezident pro vývoj produktů a Tom Chilton, vedoucí designér hry,
 navštívili Čínu a jednali o otevření obchodu (BlizzStore), podobně jako to známe z USA či Evropy.
<?php echo "LOL"; ?><b>lol</b>



*když jsem se přez prohlížeč koukal na zdrojový kód stránky, tak jsem tam našel i ten php zápis a to v celé formě ( <?php echo "LOL"; ?> ).
Zechy
Profil
Nemáš v DB zapsaný "<" a ">" jako &gt; a &lt;?
jirkasak15
Profil
ne, v DB mám jen ty tři řádky který jsem sem napsal.
DJ Miky
Profil
Když vypíšeš řetězec, ve kterém je PHP kód, tak se neprovede. Na to potřebuješ funkci eval(), tomu bych se ale doporučoval vyhnout. Proč potřebuješ ukládat PHP kód do databáze?
Kajman_
Profil *
Nejspíše chcete obsah rozparsovat, najít <?php ?> úseky a jejich vnitřek prohnat přes eval funkci.
Zechy
Profil
Ano, ale neni v DB zapsaný:
<?php echo "LOL"; ?>

Jako:
&lt;?php echo "LOL"; ?&gt;

To by pak vysvětlovalo proč vidíš ten php kod v běžným textu.
jirkasak15
Profil
Zechy:
Ne, mám tam normální "< ; >"

DJ Miky:
chtěl bych pomocí tohoto volat funkce jako např: náhodná obrázek, zobrazení ankety, výpis top 10 hráčů,.... a nenapadá mě jak jinak tyto funkce volat.

v jednom CMS jsem viděl že se tam tyto funkce vkládaj [funkce]nazev,promena1,promena2[/funkce] , ale to nemám páru jak to udělat.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0