private function FrxPostgres::php_xml in Forena Reports 7.4
Same name and namespace in other branches
- 6.2 plugins/FrxPostgres.inc \FrxPostgres::php_xml()
- 6 plugins/FrxPostgres.inc \FrxPostgres::php_xml()
- 7 plugins/FrxPostgres.inc \FrxPostgres::php_xml()
- 7.2 plugins/FrxPostgres.inc \FrxPostgres::php_xml()
- 7.3 plugins/FrxPostgres.inc \FrxPostgres::php_xml()
1 call to FrxPostgres::php_xml()
- FrxPostgres::sqlData in plugins/
FrxPostgres.inc - Get data based on file data block in the repository.
File
- plugins/
FrxPostgres.inc, line 126 - Postgres specific driver that takes advantage of native XML support
Class
- FrxPostgres
- @file Postgres specific driver that takes advantage of native XML support
Code
private function php_xml($sql) {
$db = $this->db;
$xml = new SimpleXMLElement('<table/>');
$rs = @pg_query($sql);
$e = pg_last_error();
if ($e) {
$text = $e;
if (!$this->block_name) {
$short = t('%e', array(
'%e' => $text,
));
}
else {
$short = t('SQL Error in %b.sql', array(
'%b' => $this . block_name,
));
}
$this
->error($short, $text);
}
$rownum = 0;
if ($rs) {
while ($row = pg_fetch_assoc($rs)) {
$rownum++;
$row_node = $xml
->addChild('row');
$row_node['num'] = $rownum;
foreach ($row as $key => $value) {
$row_node
->addChild(strtolower($key), htmlspecialchars($value));
}
}
}
if ($rs) {
pg_free_result($rs);
}
return $xml;
}