daeyure Posted July 8, 2011 Report Share Posted July 8, 2011 Pessoal,Quando faço uma busca em um banco de dados, o resultado é apenas uma linha, porém, com o critério que utilizei, era pra retornar 19 linhas.O que tem de errado no código?Vlw<?include 'conecta.php'?></head><body><p>Você procurou por "<?php echo $_POST['campo_busca'] ?>"</p><p> <?//**if(!empty($_POST[criterio])) { $criterio = str_replace(' ', '%', $_POST['campo_busca']); /* Altera os espaços adicionando no lugar o simbolo % */ $query = "SELECT * FROM artigos WHERE Título LIKE '%$criterio%' ORDER BY id_doc DESC"; // Executa a query no Banco de Dados $result = mysql_query($query); // Conta o total de resultados encontrados if ($result) { $linhas = mysql_num_rows($result); } echo "Sua busca retornou '$linhas' resultados."; ?>}</p><p> </p><p> </p><table width=800" border="1" align="center"> <tr> <td colspan="5" class="tabela">Lista de resultados</td> </tr> <tr> <td>id_doc</td> <td>Tipo</td> <td>Pesquisadores</td> <td>Titulo</td> <td>Ano</td> </tr><?php for($i=0;$i<$linhas;$i++) $campo = mysql_fetch_assoc($result); ?> <tr> <td><? echo $campo['id_doc]; ?></td> <td><? echo $campo['Tipo']; ?></td> <td><? echo $campo['Pesquisadores']; ?></td> <td><? echo $campo['Título']; ?></td> <td><? echo $campo['Ano']; }?></td> </tr> </table><p> </p></body></html> Quote Link to comment Share on other sites More sharing options...
0 Ricardo Portolan Posted July 8, 2011 Report Share Posted July 8, 2011 (edited) Boa tarde daeyure.Na linha abaixo (linha 2), coloque no final, uma abertura de chave;No final do '</tr>' coloque <?php } ?> .<?phpfor($i=0;$i<$linhas;$i++) {$campo = mysql_fetch_assoc($result);?><tr><td><? echo $campo['id_doc']; ?></td><td><? echo $campo['Tipo']; ?></td><td><? echo $campo['Pesquisadores']; ?></td><td><? echo $campo['Título']; ?></td><td><? echo $campo['Ano']; }?></td></tr><?php}?>Testa e qualquer problema, retorne.Abraço. Edited July 8, 2011 by Ricardo Portolan Quote Link to comment Share on other sites More sharing options...
0 daeyure Posted July 8, 2011 Author Report Share Posted July 8, 2011 Perfeito Ricardo Portolan.Era exatamente esse o problema, parece que agora está resolvido....Colocar "chaves" para que a incrementação de linhas aconteça de acordo com o número de resultados.Muito obrigado,Yuri Quote Link to comment Share on other sites More sharing options...
Question
daeyure
Pessoal,
Quando faço uma busca em um banco de dados, o resultado é apenas uma linha, porém, com o critério que utilizei, era pra retornar 19 linhas.
O que tem de errado no código?
Vlw
<?
include 'conecta.php'
?>
</head>
<body>
<p>Você procurou por "<?php echo $_POST['campo_busca'] ?>"</p>
<p>
<?
//**if(!empty($_POST[criterio]))
{
$criterio = str_replace(' ', '%', $_POST['campo_busca']);
/* Altera os espaços adicionando no lugar o simbolo % */
$query = "SELECT * FROM artigos WHERE Título LIKE '%$criterio%' ORDER BY id_doc DESC";
// Executa a query no Banco de Dados
$result = mysql_query($query);
// Conta o total de resultados encontrados
if ($result)
{
$linhas = mysql_num_rows($result);
}
echo "Sua busca retornou '$linhas' resultados.";
?>
}
</p>
<p> </p>
<p> </p>
<table width=800" border="1" align="center">
<tr>
<td colspan="5" class="tabela">Lista de resultados</td>
</tr>
<tr>
<td>id_doc</td>
<td>Tipo</td>
<td>Pesquisadores</td>
<td>Titulo</td>
<td>Ano</td>
</tr>
<?php for($i=0;$i<$linhas;$i++)
$campo = mysql_fetch_assoc($result);
?>
<tr>
<td><? echo $campo['id_doc]; ?></td>
<td><? echo $campo['Tipo']; ?></td>
<td><? echo $campo['Pesquisadores']; ?></td>
<td><? echo $campo['Título']; ?></td>
<td><? echo $campo['Ano']; }?></td>
</tr>
</table>
<p> </p>
</body>
</html>
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.