2017-09-19 2 views
0

Ich habe eine Tabelle mit den Spalten id und name. Ich möchte wissen, ob eine andere neue Spalte existiert filters (natürlich existiert es nicht).

Das ist, was ichÜberprüfen Sie, ob eine Spalte in Joomla Tabelle existiert

$db = JFactory::getDBO(); 
$query = "SHOW COLUMNS FROM `#__facets` LIKE 'filters'"; 
$db->setQuery($query); 
$res = $db->query(); 

tun Wenn ich $res drucken es zeigt resource(675) of type (mysql result) wenn ich NULL erwartete, weil Spalte doesnt existieren.

Wenn ich mit name versuchen (die Spalte vorhanden sind):

$db = JFactory::getDBO(); 
$query = "SHOW COLUMNS FROM `#__facets` LIKE 'name'"; 
$db->setQuery($query); 
$res= $db->query(); 

Es ist auch resource(234) of type (mysql result) zurückgibt.

Wie kann ich kontrollieren, ob die Spalte existiert? Die Abfrage ist in Ordnung, weil es auf MySQL Workbench

PS funktioniert: Ich bin mit Joomla 1.5, so kann ich nicht getTableColumns()

Antwort

0

Das Problem war, auf der $res= $db->query(); Linie verwenden.

Um die gewünschte NULL zu bekommen, musste ich loadResult() statt nur query(). So ist der korrekte Code:

$db = JFactory::getDBO(); 
$query = "SHOW COLUMNS FROM `#__facets` LIKE 'filters'"; 
$db->setQuery($query); 
$res = $db->loadResult(); 
Verwandte Themen