Joomla nos facilita una capa extracción de la base de datos. En la plataforma de la Api puedes ver muchas funcionalidades. Si los programadores de extensiones utilizan esta capa extracción se aseguran una mayo compatibilidad, ya que joomla permite utilizar distintos sistemas de Base de datos.
Pruebas de consultas ya realizadas en versiones joomla 1.5
Esta pruebas son anotaciones que hicimos ya hace mucho tiempo, utilizando JFactory::getDBO() haciamos una consulta a una tabla de la base de datos Joomla 1.5, pienso que sigue funcionando versiones actuales.
El siguiente ejemplo lo prove en una WEB con Joomla 1.5 :
$db =& JFactory::getDBO();
$query = 'SELECT * FROM `#__nombretable` WHERE nombrecampo = "buscar";
$db->setQuery($query);
$result = $db->loadObjectList();
$cuenta = count($result);
nombretable: es el nombre de la table sin el prefijo que genera automáticamente joomla a la hora instalarlo.
nombrecampo: el nombre del campo queremos hacer comparación de búsqueda..
$result es un array de objetos con campos que tiene la consulta.
Cuento y recorro todo el resultado, un poco así a mi modo.. :-)
for ($i = 0; $i <= count($result); $i++)
{
if ($result[$i]->position = 1)
{
$id2 = $result[0]->campo;
break;
}
}
Bueno , no es lo mas sofisticado pero puede valer.
Bueno, espero que os valga de ejemplo. Lo mas complejo sera hacer la consulta correcta. :-)
Fuentes:
Insertar y modificar datos utilizando JDatabase