misc->getDatabaseAccessor(); if (isset($_POST['offset'])) { $offset = " OFFSET {$_POST['offset']}"; } else { $_POST['offset'] = 0; $offset = ' OFFSET 0'; } $fkeynames = []; foreach ($_POST['fkeynames'] as $k => $v) { $fkeynames[$k] = html_entity_decode($v, ENT_QUOTES); } $keyspos = array_combine($fkeynames, $_POST['keys']); $f_schema = html_entity_decode($_POST['f_schema'], ENT_QUOTES); $data->fieldClean($f_schema); $f_table = html_entity_decode($_POST['f_table'], ENT_QUOTES); $data->fieldClean($f_table); $f_attname = $fkeynames[$_POST['fattpos'][0]]; $data->fieldClean($f_attname); $q = "SELECT * FROM \"{$f_schema}\".\"{$f_table}\" WHERE \"{$f_attname}\"::text LIKE '{$_POST['fvalue']}%' ORDER BY \"{$f_attname}\" LIMIT 12 {$offset};"; $res = $data->selectSet($q); if (!$res->EOF) { echo ''; echo ''; foreach (array_keys($res->fields) as $h) { echo ''; } echo ''.PHP_EOL; $i = 0; while ((!$res->EOF) && ($i < 11)) { $j = 0; echo ''; foreach ($res->fields as $n => $v) { $finfo = $res->fetchField($j++); if (in_array($n, $fkeynames, true)) { echo "'; } else { echo ''; } } echo ''.PHP_EOL; ++$i; $res->moveNext(); } echo '
'; if (in_array($h, $fkeynames, true)) { echo '[referenced key]'; } echo htmlentities($h, ENT_QUOTES, 'UTF-8'), '
", $this->misc->printVal($v, $finfo->type, ['clip' => 'collapsed']), '', $this->misc->printVal($v, $finfo->type, ['clip' => 'collapsed']), '
'.PHP_EOL; $js = ''; } else { printf("

{$this->lang['strnofkref']}

", "\"{$_POST['f_schema']}\".\"{$_POST['f_table']}\".\"{$fkeynames[$_POST['fattpos']]}\""); if ($_POST['offset']) { echo 'Prev <<'; } } } }