Funktion udskriver fejl

Tags:    php mysqli function

Hej
Jeg er gået igang med at fjerne en masse rod i min kode, og på den måde gøre det mere overskueligt, fordi jeg ender ud med et par funktioner, i stedet for kæmpestore scripts. Dog er jeg stødt ind i et lille problem.
Jeg har lavet en funktion der ser således ud:
Fold kodeboks ind/udPHP kode 

Den inkluderer filer de steder, hvor der er mere end en post i db der matcher, og så når den har udskrevet den første, så får jeg følgende fejl:
Fold kodeboks ind/udKode 

Line 58 er mit while-loop i min funktion.
Jeg har forsøgt at indsætte indholdet af min funktion, direkte i koden hvor den skal bruges, men her udskriver/inkluderer den absolut intet.
Hvis jeg f.eks. udkommenterer mit include i min while, og i stedet beder den om at foretage
Fold kodeboks ind/udPHP kode 

så udskriver den navnet på alle poster den henter.
Hvorfor kan jeg ikke få lov at køre en include på den måde jeg gør det her?



2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hvis linje 58 er while($stmt->fetch()) {, så er non-object $stmt. Kigger man tilbage på hvor du definerer hvad $stmt er.

Så skriver du:
$stmt=$mysqli->prepare('SELECT `modname`, `modpath`, `modenabled` FROM `modules` WHERE `category`=?')

$stmt bliver da ikke et objekt, men en boolean værdi, fordi det SQL statement, du forsøger at forberede, fejler. Kig på din SQL, eller om du har ændret i din database.





Jeg har tjekket min SQL og min database. Alt passer sammen.
Så prøvede jeg lige at ændre $stmt til $modstmt i stedet. Nu virker det perfekt uden fejl.
Det betyder jo også at jeg åbenbart har et prepared statement et eller andet sted i noget andet kode, som jeg ikke har fået afsluttet, og det må jo så give problemet.



t