Autor Zpráva
Rafan
Profil
Dobrý večer,

mám dotaz potřeboval bych funkci která by mi vypsala tento kousek php kódu :

echo "<td><div class='videa'>";
echo "<a href='?id_video=".$riadok["id_video"]."'>".$riadok["titulek"]."</a><br><i>";
echo "<div class='videa-center'><img src='".$riadok["obrazek"]."'><br></div></i>";
echo "</td></div>";


Zkoušel jsem to takto :

<?php

function videa_razeni()
 {

echo "<td><div class='videa'>";
echo "<a href='?id_video=".$riadok["id_video"]."'>".$riadok["titulek"]."</a><br><i>";
echo "<div class='videa-center'><img src='".$riadok["obrazek"]."'><br></div></i>";
echo "</td></div>";
 }
 
 ?>


Ale bohužel. Prosím vás o radu. S funkcema jsem ve styku prvně. Děkuji všem za radu.
Jozin
Profil *
Ahoj,

asi ti to nefungovalo jen z důvodu, že si nezavolal tu funkci...

Někde v kódu potom musíš napsat:
videa_razeni();


Když jsi začátečník, tak ti nebudu říkat, že to máš špatně, ale jen takovou věc pro zamyšlení... funkce vrací hodnoty nikoli vypisují. v funkcích by nemělo být echo (pokud to není chybová hláška) ;)
Rafan
Profil
videa_razeni(); To tam mam. Akorát já jsem myslel že mi to tam normálně ten kousek php vypíše... Dá se to takhle nějak přes ty funkce řešit? Tento kousek bude na více stránkách a když bych ho měnil nechci ho měnit zbytečně 41krát.
Keeehi
Profil
Rafan:
Na daném místě se to vypíše. Nebo alespoň by mělo. A já bych řekl, že se to i vypisuje, ale ne tak, ja by jsi ty očekával. To html kolem dokola se vypíše, ale chybějí ti tam údaje že? Jestli ano tak věz, že proměnné uvnitř funkce jsou úplně jiné než ty vně, i když se stejně jmenují.

Ten obsah do funkce dostaneš jako argument funkce:
function videa_razeni($promenna)
 {
echo "<td><div class='videa'>";
echo "<a href='?id_video=".$promenna["id_video"]."'>".$promenna["titulek"]."</a><br><i>";
echo "<div class='videa-center'><img src='".$promenna["obrazek"]."'><br></div></i>";
echo "</td></div>";
 }

videa_razeni($riadok);

Šlo by to i jinak, ale to nejsou hezká a správná řešení.
Rafan
Profil
OK, díky funguje to.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0