Ir para conteúdo
Fórum Script Brasil
  • 0

dificuldade em capturar dados e imprimir na tela (formulário)


nsouza

Pergunta

Colegas, consegui este código:

<?php

mysql_connect("localhost", "root", "masterkey") or

die("Could not connect: " . mysql_error());

mysql_select_db("loja");

$result = mysql_query("SELECT * FROM categorias");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

printf("ID: %s Name: %s", $row[0], $row[1]);

}

mysql_free_result($result);

?>

Ele esta imprimindo o seguinte resultado na tela:

ID: 1 Name: video aulasID: 2 Name: cursos

mas este resultado eu preciso que fosse impresso neste formulário de visualização

FORMULÁRIO

<table width="99%" border="0">

<tr>

<td><table width="43%" border="0" align="center">

<tr>

<td><form name="form1" method="post" action="">

<table width="99%" border="1" cellpadding="1">

<tr>

<td width="85%"><strong>Categoria</strong></td>

<td colspan="2"><div align="center"><strong>Ação</strong></div>

</td>

</tr>

<tr>

<td></td> (Eu preciso que os valores (resultado) sejam impresso dentro da linha usando o codigo acima)

<td width="8%"><div align="center"><img src="imagens/alterar.gif" width="16" height="16"></div>

</td>

<td width="7%"><div align="center"><img src="imagens/excluir.gif" width="16" height="16"></div>

</td>

</tr>

<tr>

<td colspan="3"><div align="right"><img src="imagens/inserir.gif" width="55" height="16"></div>

</td>

</tr>

</table>

</form>

</td>

</tr>

</table></td>

</tr>

</table>

Desculpem se o codigo ficou grande demais, é quer como iniciante foi a unica maneira que achei de explicar melhor minha duvida.

os valores no formulario precisam ser impressos um debaixo do outro, ex:

Aulas

Videos aulas

Exercicio

etc....

Desde já muito obrigado!

Editado por nsouza
Link para o comentário
Compartilhar em outros sites

22 respostass a esta questão

Posts Recomendados

  • 0

Bem, pelo que entendi no seu código ele tava consultando o banco de dados, mais se você quer que apareça o resultado de um form, faça o seguinte:

No form, acrescente action="nomedessapagina" e de nome aos campos, exemplo:

<form method="post" action="teste.php"> //inicio do formulario

<input type="text" name="abc"> //Dando nome ao campo para identificação

<input type="Submit"> //Botão submit...

e então nessa pagina "teste.php" você usa:

echo $_POST['abc'];

massssssssssssssss se eu entendi errado, e você qur exibir os resultados da busca do mysql, faça o seguinte

Você pode armazenar os valores encontrados, por exemplo:

$aulas = $row[1]; (isso ainda dentro do while la emcima)

e etc, e na hora d emostrar, faça assim:

<td>

<?php echo 'Aulas: ' . $aulas . '.'; //exibe a variavel aulas e coloca um ponto no final

echo '<br>' . $outravariavel . '.'; //pula a linha e exibe outro valor e coloca um ponto no final

?>

</td>

Pronto, deu pra entender?

Link para o comentário
Compartilhar em outros sites

  • 0

voce já havia perguntado isto no tópico:

http://scriptbrasil.com.br/forum/index.php?showtopic=147059

a resposta é a mesma

coloque

echo $coluna[N]; o N dentro da chave vai ser correpondente a sua tabela

para mais informações veja em:

http://php.net/mysql_fetch_array

estando no php.net veja a função mysql_fetch_assoc

com ela voce coloca o nome que esta na tabela no lugar do numero

por exemplo

$coluna["categoria"];

Link para o comentário
Compartilhar em outros sites

  • 0
Bem, pelo que entendi no seu código ele tava consultando o banco de dados, mais se você quer que apareça o resultado de um form, faça o seguinte:

No form, acrescente action="nomedessapagina" e de nome aos campos, exemplo:

<form method="post" action="teste.php"> //inicio do formulario

<input type="text" name="abc"> //Dando nome ao campo para identificação

<input type="Submit"> //Botão submit...

e então nessa pagina "teste.php" você usa:

echo $_POST['abc'];

massssssssssssssss se eu entendi errado, e você qur exibir os resultados da busca do mysql, faça o seguinte

Você pode armazenar os valores encontrados, por exemplo:

$aulas = $row[1]; (isso ainda dentro do while la emcima)

e etc, e na hora d emostrar, faça assim:

<td>

<?php echo 'Aulas: ' . $aulas . '.'; //exibe a variavel aulas e coloca um ponto no final

echo '<br>' . $outravariavel . '.'; //pula a linha e exibe outro valor e coloca um ponto no final

?>

</td>

Pronto, deu pra entender?

Caros colegas,

eu entendi tudo o que você.s disseram, e repeti o post sim pois achei que desta forma expliquei mais fácil.

Com respeito a função eu não tenho duvidas, eu a executo e funciona, eu não sei fazer isso aplicando no formulário, pois isso postei

meu código e se fosse possível você.s pudessem altera-lo para mim, por mais que você.s expliquem minha dificuldade e aplica-lo.

php com html.

Se puderem ajustar o código para mim serei grato, mas por favor não entendam que estou querendo que façam para mim, é que já estou a dias quebrando a cabeça para fazer isso, mas minha pouca experiencia não me permitiu atingir meu objetivo, por isso postei.

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

o Rhyrok já explicou isto no exemplo dele, esta bem claro

simplificando o que ele colocou

// Recupera o valor

$aulas = $row[1];

//exibe o valor recuperado

echo $aulas;

ou se for no html

modelo 1

<?=$aulas;?>

modelo 2

<? echo $aulas;?>

modelo 3

<?php echo 'Aulas $aulas'; ?>

ou ainda

<br>Aulas : <b>".$aulas;

Editado por jissa
Link para o comentário
Compartilhar em outros sites

  • 0

entendi, mas porque então no eu código não funcionar, veja como fiz

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<table width="99%" border="0">

<tr>

<td><form name="form1" method="post" action="">

<table width="99%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td><div align="center" class="style1"><strong>Lista de Categorias </strong></div>

</td>

</tr>

<tr>

<td><table width="99%" border="1" cellspacing="0" cellpadding="0">

<tr>

<td width="91%">Categorias </td>

<td colspan="2"><div align="center">Ação</div>

</td>

</tr>

<? include ("conexao.php");

$sql = mysql_query("select * from categorias");

while ($coluna = mysql_fetch_array($sql,MYSQL_NUM))

{ ?>

<tr>

<td><? echo ($coluna[1]); ?> </td> // Aqui é a linha do formulário que receberá os dados da tabela, mas nada esta acontecendo, tudo isso depende desta linha!

<td width="4%"><a href="principal.php?link=3&acao=Alterar&id= <? echo $coluna[id_categoria] ; ?> " > <img src="imagens/alterar.gif" width="16" height="16" border = "0" /> </a></td>

<td width="5%"><a href ="principal.php?link=3&acao=Excluir&id=<? echo $coluna[id_categoria] ; ?>"> <img src="imagens/excluir.gif" width="16" height="16" border = "0" /></a></td>

</tr>

<? } ?>

<tr>

<td colspan="3"><div align="right"> <a href="principal.php?link=3"><img src="imagens/inserir.gif" width="55" height="16" border = "0"/></a></div>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td> </td>

</tr>

</table>

</form></td>

</tr>

</table>

</body>

</html>

pergunto:

Onde no meu codigo esta errado? Talvez seja ai meu problema hora de implementar junto com HTMl, se eu testar apenas o codigo funciona,

mas se teste como esta ai, não acontece nada, o form fica em brancol. Entende meu problema? Vc poderia fazer a gentileza de corrigir o codigo

para mim.

Desde já muito obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

Colegas,

me perdoem, na verdade os valores tem que ser exibidos em uma tabela, cada registro tem que sair em uma linha.

Postei errado me perdoem.

Abaixo o codigo.

Preciso que os valores ao serem impressos fiquem sempre dentro da linha.

Mais uma vez me desculpem

<html>

<head>

<title>Documento sem t&iacute;tulo</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<table border="1" cellpadding="2">

<?php

mysql_connect("localhost", "root", "masterkey") or

die("Could not connect: " . mysql_error());

mysql_select_db("loja");

$sql = mysql_query("select * from categorias");

while ($coluna = mysql_fetch_array($sql))

{?>

<tr>

<td><? echo ($coluna[1]); ?>

</td>

</tr>

<? } ?>

</table>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0
coloque a estrutura dele aqui

pelo phpmyadmin exporte sem os dados, só a estrutura

Eu nunca fiz isso!

O que consegui foi os codigo da tabela categoria, foi o que exportou não sei se era isso que queria?

CREATE TABLE IF NOT EXISTS `categorias` (

`id_categoria` int(11) NOT NULL AUTO_INCREMENT,

`categoria` varchar(100) NOT NULL,

PRIMARY KEY (`id_categoria`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

Link para o comentário
Compartilhar em outros sites

  • 0

troque os dados para os que voce usa

<?
$host = "localhost";
$user = "SeuUsuario";
$senha = "SuaSenha";
$DB = "SeuBancoDeDados";
?>

<html>
<head>
<title>Documento sem t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table border="1" cellpadding="2">

<?php
$conn = mysql_connect($host,$user,$senha) or die("Erro ao conectar: " . mysql_error());
mysql_select_db($DB);

$sql = mysql_query("select * from categorias");
while ($coluna = mysql_fetch_array($sql))
{?>
<tr>
<td><? echo ($coluna[1]); ?>
</td>
</tr>
<? } ?>

</table>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0
troque os dados para os que voce usa

<?
$host = "localhost";
$user = "SeuUsuario";
$senha = "SuaSenha";
$DB = "SeuBancoDeDados";
?>

<html>
<head>
<title>Documento sem título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table border="1" cellpadding="2">

<?php
$conn = mysql_connect($host,$user,$senha) or die("Erro ao conectar: " . mysql_error());
mysql_select_db($DB);

$sql = mysql_query("select * from categorias");
while ($coluna = mysql_fetch_array($sql))
{?>
<tr>
<td><? echo ($coluna[1]); ?>
</td>
</tr>
<? } ?>

</table>
</body>
</html>

Fiz as substituições e o teste e deu o seguinte erro:

Parse error: syntax error, unexpected $end in C:\Xampp\xampp\htdocs\Loja\Admin\teste5.php on line 33

<?

$host = "localhost";

$user = "root";

$senha = "masterkey";

$DB = "loja";

?>

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<table border="1" cellpadding="2">

<?php

$conn = mysql_connect($host,$user,$senha) or die("Erro ao conectar: " . mysql_error());

mysql_select_db($DB);

$sql = mysql_query("select * from categorias");

while ($coluna = mysql_fetch_array($sql))

{?>

<tr>

<td><? echo ($coluna[1]); ?>

</td>

</tr>

<? } ?>

</table>

</body>

</html>

33 <- aqui que é apontada a linha 33

Link para o comentário
Compartilhar em outros sites

  • 0

nenhum erro..

copiei exatamente o que tem ai e colei aqui no teste que montei, apenas troquei os dados do banco e funcionou normal apareceu os dados de teste

veja se o que passou é exatamente o que voce colocou ai, pois o que tem ai esta Ok

Link para o comentário
Compartilhar em outros sites

  • 0
nenhum erro..

copiei exatamente o que tem ai e colei aqui no teste que montei, apenas troquei os dados do banco e funcionou normal apareceu os dados de teste

veja se o que passou é exatamente o que voce colocou ai, pois o que tem ai esta Ok

Caro colega, não sei o esta acontecendo!

Eu fiz o teste, depois só coloei aqui no post?

Será que é algum bug aqui no meu php?

Link para o comentário
Compartilhar em outros sites

  • 0

Na verdade esse erro ocorre quando esquece de fechar algum if ou while....verifique se tudo que você abriu está fechado...tenho certeza que resolverá o seu problema, isso não é erro do Wamp...e sim de syntax, por isso o erro ocorre na ultima linha, pois ele não está encontrando o final de algum if, while, ou coisa parecida.

Vi o código, e parece estar tudo fechado perfeitamente, existe mais alguma coisa na pagina? ou só isso?

tente usar o código assim!

<?
$host = "localhost";
$user = "SeuUsuario";
$senha = "SuaSenha";
$DB = "SeuBancoDeDados";
?>

<html>
<head>
<title>Documento sem título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table border="1" cellpadding="2">

<?php
$conn = mysql_connect($host,$user,$senha) or die("Erro ao conectar: " . mysql_error());
mysql_select_db($DB);

$sql = mysql_query("select * from categorias");
while ($coluna = mysql_fetch_array($sql))
{
echo"<tr>
<td>($coluna[1]);
</td>
</tr>";
} 
?>
</table>
</body>
</html>

Editado por *FIT*
Link para o comentário
Compartilhar em outros sites

  • 0
Na verdade esse erro ocorre quando esquece de fechar algum if ou while....verifique se tudo que você abriu está fechado...tenho certeza que resolverá o seu problema, isso não é erro do Wamp...e sim de syntax, por isso o erro ocorre na ultima linha, pois ele não está encontrando o final de algum if, while, ou coisa parecida.

Vi o código, e parece estar tudo fechado perfeitamente, existe mais alguma coisa na pagina? ou só isso?

tente usar o código assim!

<?
$host = "localhost";
$user = "SeuUsuario";
$senha = "SuaSenha";
$DB = "SeuBancoDeDados";
?>

<html>
<head>
<title>Documento sem título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table border="1" cellpadding="2">

<?php
$conn = mysql_connect($host,$user,$senha) or die("Erro ao conectar: " . mysql_error());
mysql_select_db($DB);

$sql = mysql_query("select * from categorias");
while ($coluna = mysql_fetch_array($sql))
{
echo"<tr>
<td>($coluna[1]);
</td>
</tr>";
} 
?>
</table>
</body>
</html>

Caro colega,

obrigado por ser mais uma esperança, estou fazendo umas videos aulas e isso tem me atraso demais.

Eu achei que no feriado iria progredir mais um pouco, mas fiquei travado por causa deste erro.

Respondendo sua pergunta:

Não existe mais nada nesta página apenas este código.

Quando chegar em casa a noite, farei o teste no codigo que você alterou e te retornarei. Responderei depois das 19:00 hs.

Um grande abraço!

Editado por nsouza
Link para o comentário
Compartilhar em outros sites

  • 0

Fit, muito obrigado, funcionou era o que eu queria!!!

Estou muito contente por ter brilhado uma luz.

Mas não consegui adpatar ao meu codigo, os valores estão exatos foram impressos 3 registro

dentro das linhas.

No codigo abaixo como ficaria?

Indiquei em vermelhor onde preciso que aparece os resultados.

<?php

include ("conexao.php");

?>

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<table width="99%" border="0">

<tr>

<td><form name="form1" method="post" action="">

<table width="99%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td><div align="center" class="style1"><strong>Lista de Categorias </strong></div>

</td>

</tr>

<tr>

<td><table width="99%" border="1" cellspacing="0" cellpadding="0">

<tr>

<td width="91%">Categorias </td>

<td colspan="2"><div align="center">Ação</div>

</td>

</tr>

<tr>

<td> Preciso que os resultados aparecem nesta linha. Como fica o código aqui? lembrando que nesta linha tenho a coluna alterar e excluir! </td>

<td width="4%"><a href="principal.php?link=3&acao=Alterar&id= <? echo $coluna[id_categoria] ; ?> " > <img src="imagens/alterar.gif" width="16" height="16" border = "0" /> </a></td>

<td width="5%"><a href ="principal.php?link=3&acao=Excluir&id=<? echo $coluna[id_categoria] ; ?>"> <img src="imagens/excluir.gif" width="16" height="16" border = "0" /></a></td>

</tr>

<tr>

<td colspan="3"><div align="right"> <a href="principal.php?link=3"><img src="imagens/inserir.gif" width="55" height="16" border = "0"/></a></div>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td> </td>

</tr>

</table>

</form></td>

</tr>

</table>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Colegas, consegui este código:

<?php

mysql_connect("localhost", "root", "masterkey") or

die("Could not connect: " . mysql_error());

mysql_select_db("loja");

$result = mysql_query("SELECT * FROM categorias");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

printf("ID: %s Name: %s", $row[0], $row[1]);

}

mysql_free_result($result);

?>

Ele esta imprimindo o seguinte resultado na tela:

ID: 1 Name: video aulasID: 2 Name: cursos

mas este resultado eu preciso que fosse impresso neste formulário de visualização

FORMULÁRIO

<table width="99%" border="0">

<tr>

<td><table width="43%" border="0" align="center">

<tr>

<td><form name="form1" method="post" action="">

<table width="99%" border="1" cellpadding="1">

<tr>

<td width="85%"><strong>Categoria</strong></td>

<td colspan="2"><div align="center"><strong>Ação</strong></div>

</td>

</tr>

<tr>

<td></td> (Eu preciso que os valores (resultado) sejam impresso dentro da linha usando o codigo acima)

<td width="8%"><div align="center"><img src="imagens/alterar.gif" width="16" height="16"></div>

</td>

<td width="7%"><div align="center"><img src="imagens/excluir.gif" width="16" height="16"></div>

</td>

</tr>

<tr>

<td colspan="3"><div align="right"><img src="imagens/inserir.gif" width="55" height="16"></div>

</td>

</tr>

</table>

</form>

</td>

</tr>

</table></td>

</tr>

</table>

Desculpem se o codigo ficou grande demais, é quer como iniciante foi a unica maneira que achei de explicar melhor minha duvida.

os valores no formulario precisam ser impressos um debaixo do outro, ex:

Aulas

Videos aulas

Exercicio

etc....

Desde já muito obrigado!

[/quote

(Resolvido) Colegas, Eu resolvi o problema, era na opção short Tag <? ?> estava "OFF" no php.ini

Não estou usando ela, uso apenas a forma "<php ?>" matei o problema.

Aprendemos juntos mais essa.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...