Mysqli class

Tags:    php

Fold kodeboks ind/udPHP kode 


Nogen der kan fortælle mig hvorfor jeg får denne fejl?


Fatal error: Call to a member function prepare() on a non-object in /Applications/XAMPP/xamppfiles/htdocs/engine/posts.class.php on line 7



6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
Fordi du tilgår den lokale variabel $mysqli, som ikke findes endnu. Skriv følgende i starten af funktionen:
Fold kodeboks ind/udKode 


Læs mere her: http://www.php.net/manual/en/language.variables.scope.php



Jeg plejer at lave noget i denne stil:
Fold kodeboks ind/udKode 


Så kan jeg have én instans af Database klassen og fra den kan jeg hente data access objekter fra, som så kan udføre søgningerne og opdateringerne.



Hvis jeg ikke ønsker at skrive global heletiden, kan jeg så gøre det på andre måder? måske lave en classe til databsen for se selv?



Globale variable er også dårlig stil. Din database instans burde være en privat member variabel i din 'posts' klasse.



Kunne du dele et eksempel på dette?



Har du prøvet at oprette $mysqli variablen inden i posts klassen?

Nu ved jeg ikke om $mysqli variablen bliver brugt andre steder, men du kan prøve noget ala det her.

Et sted i din kode kan du oprette nogle definede konstante variabler med hanholdsvis host, bruger, password og database.

Fold kodeboks ind/udPHP kode 


Herefter kan du lave en konstruktor i din posts klasse.
Fold kodeboks ind/udPHP kode 


Jeg håber at mit eksempel virker, da jeg ikke har testet det. Og håber at du kan bruge det.



t