Hallo Roger
Danke für die Funktion, sieht gut aus, komme aber noch nicht ganz zurecht.
Im Model in dem ich die Daten auslese habe ich nun folgende Abfrage:
Code:
function &getDatakool () {
//Laden der Datbenbank
$db = &getKoolDbObject();
//Laden der Daten
$query = ' SELECT id, name FROM ko_eventgruppen ';
$db->setQuery( $query );
$this->_data = $this->_getList( $query );
// Daten ausgeben
return $this->_data;
}
Wenn ich nun die Einstellungen so gesetzt habe, dass die Daten aus der "internen" DB gelesen werden, so funktioniert alles. Es wir nun eine Liste mit der ID und den Namen der Evengruppen ausgegeben. Alles Bestens!
Wenn ich nun aber die Datenbank auf "Extern" setze so kommt der Fehler:
"Notice: Only variable references should be returned by reference in(...)Fatal error: Call to a member function setQuery() on a non-object in(...)"
Die Parameter (Host, Username etc.) sind richtig, habe ich sogar schon manuell eingegeben, kam der gleiche Fehler. Die SQL Abfrage ist bei beiden DB ja die gleiche, also woran kann der Fehler liegen?
Dann habe ich noch eine Frage zum Code:
Für was braucht man 3 Gleichheitszeichen (z.B. ...and $jKoolDbInstance === false...) (Wie gesagt, bin mich zur zeit noch am einarbeiten ins PHP...)
Dann noch eine Fragen zu den Helpers:
Ich würde gerne die Abfrage in die Helpers verpacken. Finde das noch praktisch wenn das Zeugs in verschiedenen Ordnern abgelegt ist. Die Frage ist nur, wie ich das nun lade. Ich habe mal bei einer anderen Komponente abgekuckt, komme aber nicht ganz nach.
Ich habe einen Ordner namens "Helpers" angelegt und darin eine Datei "komponentenname.php". Die Datei fängt nun im Meinem Falle mit folgendem Code an:
Code:
// Helpersklasse für jkool
class JkoolHelper {
...
}
Nun, wie binde ich diese Klasse nun ein, dass sie von allen Seiten gelesen werden kann? Ich habe mal versucht, generell die Datei mit folgendem Code zu laden:
Code:
require_once(JPATH_COMPONENT.DS.'helpers'.DS.'jkool.php');
Doch das funktioniert noch nicht ganz... Was muss ich noch tun?
Herzliche Grüsse
Strubi