RUY 2 Denunciar post Postado Março 24, 2010 A ideia é simples exibir em html uma tabela com os resultados de um banco de dados O que acontece: ele conta o número de linhas menos a da última inclusão e repete apenas o primeiro registro(N linhas vezes) Segue o código <?php /* */ include("mysqlconfig.inc"); $query = "insert into patrimonio (rp,tipo,marca,local,obs) values('$_POST[rp]','$_POST[tipo]','$_POST[marca]','$_POST[local]','$_POST[obs]')" or die (mysql_error()); //grava as informações $grava = mysql_query($query) or die (mysql_error()); //conta o número de linhas afetadas. Se for 1, a gravação foi efetuada $num_linha = mysql_affected_rows() or die ("Não houne alteração"); //Busca os dados $busca = mysql_query("select *from patrimonio") or die (mysql_error()); //Mostra o resultado da busca $mostra=mysql_fetch_array($busca); echo<<<HTML <html> <head> <title>Titulo</title> </head> <body> <table style="margin-left: 125px; width: 731px; height: 42px;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 47px;">RP</td> <td style="width: 134px;">Marca</td> <td style="text-align: justify; width: 176px;">Tipo</td> <td style="width: 106px;">Local </td> <td style="width: 184px;">Observação</td> </tr> </tbody> </table> HTML; echo"</body></html>"; while ($num_linha=mysql_fetch_array($busca)) { echo<<<HTML <html> <head> <title></title> </head> <body> <table style="margin-left: 125px; width: 731px; height: 42px;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 47px;">$mostra[rp]</td> <td style="width: 134px;">$mostra[marca]</td> <td style="text-align: justify; width: 176px;">$mostra[tipo]</td> <td style="width: 106px;">$mostra[local]</td> <td style="width: 184px;">$mostra[obs]</td> </tr> </tbody> </table> HTML; } ?> Gostaria de saber onde pode estar o erro Compartilhar este post Link para o post Compartilhar em outros sites
RUY 2 Denunciar post Postado Março 24, 2010 Valeu maciel mas acabei de resolver o problema. Quanto ao fato de repetir o mesmo registro N linhas vezes foi o erro aqui: while ([b]$num_linha[/b]=mysql_fetch_array($busca)) o correto seria: while ([b]$mostra[/b]=mysql_fetch_array($busca)) Como no Heredoc Quanto ao fato de não exibir uma linha ao inserir , foi apenas neessa´rio trocar o while pelo do-while assim o código ficou: <?php /* Formulario on line de cadastro de usuario VERSÃO:0.1 Desenvolvedor:Ivan da Silva Campos Cliente:LANAGRO/RS */ include("mysqlconfig.inc"); $query = "insert into patrimonio (rp,tipo,marca,local,obs) values('$_POST[rp]','$_POST[tipo]','$_POST[marca]','$_POST[local]','$_POST[obs]')" or die (mysql_error()); //grava as informações $grava = mysql_query($query) or die (mysql_error()); //conta o número de linhas afetadas. Se for 1, a gravação foi efetuada $num_linha = mysql_affected_rows() or die ("Não houne alteração"); //Busca os dados $busca = mysql_query("select *from patrimonio") or die (mysql_error()); //Mostra o resultado da busca $mostra=mysql_fetch_array($busca); echo<<<HTML <html> <head> <title>Consulta</title> <link type="text/css" href="Sistema/css/css.css" rel="stylesheet"> </head> <body> <br> <table style="margin-left: 125px; width: 731px; height: 42px;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 47px;">RP</td> <td style="width: 134px;">Marca</td> <td style="text-align: justify; width: 176px;">Tipo</td> <td style="width: 106px;">Local </td> <td style="width: 184px;">Observação</td> </tr> </tbody> </table> HTML; echo"</body></html>"; do { echo<<<HTML <html> <head> <title></title> </head> <body> <table style="margin-left: 125px; width: 731px; height: 42px;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td style="width: 47px;">$mostra[rp]</td> <td style="width: 134px;">$mostra[marca]</td> <td style="text-align: justify; width: 176px;">$mostra[tipo]</td> <td style="width: 106px;">$mostra[local]</td> <td style="width: 184px;">$mostra[obs]</td> </tr> </tbody> </table> HTML; } while ($mostra=mysql_fetch_array($busca)) Agradeço a todos pela atenção e chefia fecha a conta Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Março 24, 2010 @macielcr7 não flood o fórum. Mensagens como: cara daqui a pouco eu posto...... e ah tah vlews!' http://forum.imasters.com.br/public/style_emoticons/default/joia.gif não agregam valor nenhum ao fórum, por isso foram removidas. Compartilhar este post Link para o post Compartilhar em outros sites