
Gabor
Szerkesztő
|
Ez a hibaüzenet hogy Call to undefined fuction azt jelenti hogy a függvény (embed_topic) nincs definiálva. Ha a topicot nem találná azt írná ki. Ez azért van mert a fájlban ahol meghívod ezt a függvényt (embed_topic) előbb létre kell azt hozni, meg kell írni. De már meg is van írva, az újonnan létrehozott embedded_topic.php-ban (azt hiszem így neveztük el ha rosszul emlékszem akkor abban a fájlban ahova raktad). A php képes futásidőben más fájlok tartalmát betölteni így nem kell minden fájl elején újra megírni ugyanazt a függvényt. Erre az include vagy a require utasítás használható. Én az includeot javasoltam.
Ezért a fájl elejére minden más elé:
1
| <?php include "oneforum/embedded_topic.php"; |
Így betölti a fájl tartalmát és ezzel a függvény definícióját is. Ezután már megtudod hívni és működni fog.
megj.: a require és az include közt az a különbség hogy a require utasítást még azelőtt hajtja végre a php mielőtt futtatni kezdené a programot. Tehát ez egyszerű szövegfeldolgozás, bemásolja a másik fájl tartalmát. Ha a require utasítás nem találja meg a fájlt Fatal error-t dob ->leáll a program futása. Az include ezzel szemben futtatás közben értékelődik ki így például használható egy if-en belül. (És nem is dob falat errort hanem csak egy warningot)
|