- $dados = mysql_query("SELECT * FROM cliente") or die("Erro ao selecionar dados do cliente" . mysql_error() );
- if(mysql_num_rows($dados) > 0)
- {
- $dom = new DOMDocument("1.0", "UTF-8");
- $dom->preserveWhiteSpace = false;
- $dom->formatOutput = true;
- //criando o nó principal (root)
- $root = $dom->createElement("Cadastro");
- while( $reg = mysql_fetch_assoc($dados) )
- {
- //cria os elementos
- $cliente = $dom->createElement("cliente");
- $idcliente = $dom->createElement("idcliente", $reg['idcliente']);
- $nmcliente = $dom->createElement("nmcliente", $reg['nmcliente']);
- $dcendereco = $dom->createElement("dcendereco", $reg['dcendereco']);
- $enestadocivil = $dom->createElement("enestadocivil", estado_civil($reg['enestadocivil']) );
- $ensexo = $dom->createElement("ensexo", sexo($reg['ensexo']) );
- $txcomentario = $dom->createElement("txcomentario", $reg['txcomentario']);
- $hoobies = $dom->createElement("hoobies");
- //adiciona os nós no cliente
- $cliente->appendChild($idcliente)->setAttribute('dtcadastro', $reg['dtcadastro']);
- $cliente->appendChild($nmcliente)->setAttribute('dtnascimento', $reg['dtnascimento']);
- $cliente->appendChild($dcendereco);
- $cliente->appendChild($enestadocivil)->setAttribute('valor', $reg['enestadocivil']);
- $cliente->appendChild($ensexo)->setAttribute('valor', $reg['ensexo']);
- $cliente->appendChild($txcomentario);
- $hoobies = $cliente->appendChild($hoobies);
- //hobbies
- $query_hobbies = "SELECT hoobies.*
- FROM hoobies
- WHERE hoobies.idhoobies
- IN(SELECT hoobies_cliente.idhoobies
- FROM hoobies_cliente
- WHERE hoobies_cliente.idcliente = " . $reg['idcliente'] . ")
- GROUP BY hoobies.idhoobies";
- $rs_hobbies = mysql_query($query_hobbies) or die('Erro na consulta aos hobbies' . mysql_error() );
- if( mysql_num_rows($rs_hobbies) > 0)
- {
- while( $reg = mysql_fetch_assoc($rs_hobbies) )
- {
- $hoob = $dom->createElement("idhoobies", $reg['idhoobies']);
- $hoobies->appendChild($hoob);
- $hoob = $dom->createElement("nmhoobies", $reg['nmhoobies']);
- $hoobies->appendChild($hoob);
- }
- }
- $root->appendChild($cliente);
- }
- //adiciona o nó contato na raiz
- $dom->appendChild($root);
- //cabeçalho da página
- header("Content-Type: text/xml");
- //exibe xml
- echo $dom->saveXML();
- }