| Server IP : 104.21.84.107 / Your IP : 104.23.197.208 Web Server : Apache/2.4.63 (Ubuntu) System : Linux adminpruebas-Virtual-Machine 6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 8.4.5 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/pregrados/contaduria-publica/plugins/fields/sql/tmpl/ |
Upload File : |
<?php
/**
* @package Joomla.Plugin
* @subpackage Fields.Sql
*
* @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\Database\ParameterType;
$value = $field->value;
if ($value == '') {
return;
}
$db = Factory::getDbo();
$value = (array) $value;
$query = $db->getQuery(true);
$sql = $fieldParams->get('query', '');
$bindNames = $query->bindArray($value, ParameterType::STRING);
// Run the query with a having condition because it supports aliases
$query->setQuery($sql . ' HAVING ' . $db->quoteName('value') . ' IN (' . implode(',', $bindNames) . ')');
try {
$db->setQuery($query);
$items = $db->loadObjectList();
} catch (Exception $e) {
// If the query failed, we fetch all elements
$db->setQuery($sql);
$items = $db->loadObjectList();
}
$texts = [];
foreach ($items as $item) {
if (in_array($item->value, $value)) {
$texts[] = $item->text;
}
}
echo htmlentities(implode(', ', $texts));