Tito Tito Postado Fevereiro 24, 2005 Denunciar Share Postado Fevereiro 24, 2005 beleza gente,tenho essa função aqui:<?php function query_xml($sql, $table){ $num_fields = mysql_num_fields($sql); $num_rows = mysql_num_rows($sql); echo '<?xml version="1.0" encoding="iso-8859-1"?> <xml> <tabela name='. $table.'>'; for($a = 0; $a < $num_fields; $a++) { $nome = mysql_field_name($sql, $a); echo ' <coluna name='.$nome.'>'; $b = 1; while ($arr = mysql_fetch_assoc($sql)) { echo ' <linha id='.$b.'>'.$arr[$nome].'</linha>'; $b++; } unset($b); echo ' </coluna>'; } echo ' </tabela> </xml>';}$query = mysql_query("SELECT * FROM newsletter");query_xml($query, "newsletter");mysql_close();?>para tranformar uma query num arquivo xml, mas acontece q ele só retorna os valores da primeira coluna:<?xml version="1.0" encoding="iso-8859-1"?> <xml> <tabela name=newsletter> <coluna name=id> <linha id=1>1</linha> <linha id=2>6</linha> <linha id=3>4</linha> <linha id=4>5</linha> <linha id=5>7</linha> <linha id=6>8</linha> <linha id=7>9</linha> <linha id=8>10</linha> <linha id=9>11</linha> <linha id=10>12</linha> <linha id=11>13</linha> <linha id=12>15</linha> <linha id=13>16</linha> </coluna> <coluna name=nome> </coluna> <coluna name=email> </coluna> </tabela> </xml>as outras ficam sem nada, qual seria o erro? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Tito Tito Postado Fevereiro 24, 2005 Autor Denunciar Share Postado Fevereiro 24, 2005 problema resolvido parece q o mysql_fetch_array só pode ser feito uma vez Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Fevereiro 24, 2005 Denunciar Share Postado Fevereiro 24, 2005 Não necessariamente.Mas a mysql_fetch_array() lê uma linha e move o ponteiro. Se o ponteiro chega no final, você tem que retornar ele pro início pra poder usar de novo. · http://br.php.net/function.mysql-data-seek Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bigodines Postado Fevereiro 25, 2005 Denunciar Share Postado Fevereiro 25, 2005 Eu lembro que pedi 2 semanas pesquisando sobre isso.. maldito mysql_data_seek($resource,0,0); Essa função deve ser usada sempre que você quiser 'reaproveitar' um resultado de consulta. (estou só complementando o que o error falou pra não correr o risco de alguém pensar q é por causa do xml.. tem loko pra tudo né).Para vetores 'normais' use reset(); e para arquivos você pode usar fseek(); Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Tito Tito
beleza gente,
tenho essa função aqui:
para tranformar uma query num arquivo xml, mas acontece q ele só retorna os valores da primeira coluna:
as outras ficam sem nada, qual seria o erro?
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.