Eutou fazendo um arquivo em php q paga dados em um banco de dados e faz um arquivo em xml pra ser usado em Flash. Estou tendo alguns problemas com o xml porque falta fechar um dos nodes (</>). Olha o codigo em php:
<?php
$connection = mysql_connect("localhost", "", "") or die ('cannot reach database');
$db = mysql_select_db("tutoriais") or die ("this is not a valid database");
$sql = @mysql_query("SELECT LEFT(nome,1) as letra, nome, telefone, email, cidade, endereco from agenda Order by nome;") or die("ERRO NO SQL");
$row=mysql_num_rows($sql);
if($row>0){
$conteudo = "<?xml version='1.0'?><agenda>";
$letraAnterior="";
$grupoAberto=false;
for($i=0; $i<$row; $i++) {
$letra = mysql_result($sql,$i,"LETRA");
$nome = mysql_result($sql,$i,"NOME");
$telefone = mysql_result($sql,$i,"TELEFONE");
$email= mysql_result($sql,$i,"EMAIL");
$cidade = mysql_result($sql,$i,"CIDADE");
$endereco = mysql_result($sql,$i,"ENDERECO");
if($letraAnterior != $letra){
if($grupoAberto){
$conteudo .= "</primeira>";
$grupoAberto=false;
}else{
$grupoAberto=true;
}
$letraAnterior=$letra;
$conteudo .= "<primeira letra='$letra'>";
}
$conteudo .= "<primeiro nome='$nome'>";
$conteudo .= "<telefone>$telefone</telefone>";
$conteudo .= "<email>$email</email>";
$conteudo .= "<cidade>$cidade</cidade>";
$conteudo .= "<endereco>$endereco</endereco>";
$conteudo .= "</primeiro>";
}
if($grupoAberto){
$conteudo .= "</primeira>";
}
$conteudo .= "</agenda>";
$ponteiro = fopen("agenda2.xml", "w");
fwrite($ponteiro, utf8_encode($conteudo));
fclose($ponteiro);
echo "O arquivo <b> agenda.xml </b> foi gerado com SUCESSO !";
}else{
echo "Não existe nenhum registro na agenda!";
}
?>
Esse erro acontece com o terceiro dado vindo do mysql. Não sei onde pode estar o erro e espero q possam me ajuadar.
Pergunta
Natan Domingos
Eutou fazendo um arquivo em php q paga dados em um banco de dados e faz um arquivo em xml pra ser usado em Flash. Estou tendo alguns problemas com o xml porque falta fechar um dos nodes (</>). Olha o codigo em php:
<?php $connection = mysql_connect("localhost", "", "") or die ('cannot reach database'); $db = mysql_select_db("tutoriais") or die ("this is not a valid database"); $sql = @mysql_query("SELECT LEFT(nome,1) as letra, nome, telefone, email, cidade, endereco from agenda Order by nome;") or die("ERRO NO SQL"); $row=mysql_num_rows($sql); if($row>0){ $conteudo = "<?xml version='1.0'?><agenda>"; $letraAnterior=""; $grupoAberto=false; for($i=0; $i<$row; $i++) { $letra = mysql_result($sql,$i,"LETRA"); $nome = mysql_result($sql,$i,"NOME"); $telefone = mysql_result($sql,$i,"TELEFONE"); $email= mysql_result($sql,$i,"EMAIL"); $cidade = mysql_result($sql,$i,"CIDADE"); $endereco = mysql_result($sql,$i,"ENDERECO"); if($letraAnterior != $letra){ if($grupoAberto){ $conteudo .= "</primeira>"; $grupoAberto=false; }else{ $grupoAberto=true; } $letraAnterior=$letra; $conteudo .= "<primeira letra='$letra'>"; } $conteudo .= "<primeiro nome='$nome'>"; $conteudo .= "<telefone>$telefone</telefone>"; $conteudo .= "<email>$email</email>"; $conteudo .= "<cidade>$cidade</cidade>"; $conteudo .= "<endereco>$endereco</endereco>"; $conteudo .= "</primeiro>"; } if($grupoAberto){ $conteudo .= "</primeira>"; } $conteudo .= "</agenda>"; $ponteiro = fopen("agenda2.xml", "w"); fwrite($ponteiro, utf8_encode($conteudo)); fclose($ponteiro); echo "O arquivo <b> agenda.xml </b> foi gerado com SUCESSO !"; }else{ echo "Não existe nenhum registro na agenda!"; } ?>Esse erro acontece com o terceiro dado vindo do mysql. Não sei onde pode estar o erro e espero q possam me ajuadar.
valeu
Link para o comentário
Compartilhar em outros sites
2 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.