Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RUY

[Resolvido] Exibição de uma tabela

Recommended Posts

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

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

@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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.