Inside a DDBB a have the following data:
SELECT `addedat`, `catname`, `catkey` FROM `categorias`;
"2014-06-23" "Complementos" "complementos"
"2014-06-23" "Hombre" "hombre"
"2014-06-23" "Mujer" "mujer"
"2014-06-23" "Niños y bebes" "niños_y_bebes"
Got the following function script:
public function listAllCategories(){
$ret = null;
$result = self::$ddbb->executeQuery(self::$dao->getQueryGetAllCategories());
if ($result && (mysql_num_rows($result) !== 0)){
$categories = array();
while($row = mysql_fetch_row($result)){
$aux = new Categoria();
$aux->setCatDate($row[0]);
$aux->setCatName($row[1]);
$aux->setCatKey($row[2]);
array_push($categories, $aux);
}//while
mysql_free_result($result);
$ret1 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$ret1 .= "\n<categories>";
foreach($categories as $category){
$ret1 .= "\n\t<category>";
$ret1 .= "\n\t\t<addedat>".$category->getCatDate()."</addedat>";
$ret1 .= "\n\t\t<name>".$category->getCatName()."</name>";
$ret1 .= "\n\t\t<key>".$category->getCatKey()."</key>";
$ret1 .= "\n\t</category>";
}//foreach
$ret1 .= "\n</categories>";
$ret = trim($ret1);
}else{
$ret = new Error(self::$errorFilePath, "ERROR: no se pudo listar las categorias. MySQL = ".self::$ddbb->getError());
}
return $ret;
}
After this function, a super 'controller.php' do the following:
header("Content-Type", "text/xml");
header_response_code(200);
echo $ret;
But the script returns the following XML file:
<?xml version="1.0" encoding="UTF-8"?>
<categories>
<category>
<addedat>2014-06-23</addedat>
<name>Niños y bebes</name>
<key>niños_y_bebes</key>
</category>
<category>
<addedat>2014-06-23</addedat>
<name>Niños y bebes</name>
<key>niños_y_bebes</key>
</category>
<category>
<addedat>2014-06-23</addedat>
<name>Niños y bebes</name>
<key>niños_y_bebes</key>
</category>
<category>
<addedat>2014-06-23</addedat>
<name>Niños y bebes</name>
<key>niños_y_bebes</key>
</category>
</categories>
And jQuery claims Invalid XML