Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, estou fazendo esta newsletter para enviar as 3 últimas matérias registradas em um BD.
Mas como sou iniciante (e bota iniciante nisso!) não sei como mostrar e organizar os dados.
esta é a máscara da newsletter: ver newsletter
tenho os seguintes campos (3 campos) no meu BD: mat_id ; mat_titulo ; mat_texto
preciso colocar em cada tarja cinza (div class="materias") titulo e texto de cada matéria.
Em cada tarja vai a última a penúltima e a antipenúltima matéria.
Como faço isso !!!! preciso de instruções didáticas por favor.
(já fiz a conexão ao banco e o Recordset para selecionar os dados.)
Abraços !
Faça o seguinte,
Sua query, irá selecionar as 3 últimas notícias (limit 3) em ordem decrescente organizado pelo ID:
$sql = mysql_query("SELECT * FROM tabelanome order by mat_id DESC limit 3");
Agora faça um laço para mostrar na tela sua query, exemplo com tabela:
<? while($valor = mysql_fetch_array($sql)) { ?>
<tr>
<td><?=$valor["mat_titulo"]?></td>
</tr>
<tr>
<td><?=$valor["mat_texto"]?></td>
</tr>
<tr>
<td> </td>
</tr>
<? } ?>
Ou seja, fez um laço para mostrar sua query (que retorna 3 linhas).>
Faça o seguinte,
Sua query, irá selecionar as 3 últimas notícias (limit 3) em ordem decrescente organizado pelo ID:
$sql = mysql_query("SELECT * FROM tabelanome order by mat_id DESC limit 3");
Agora faça um laço para mostrar na tela sua query, exemplo com tabela:
<? while($valor = mysql_fetch_array($sql)) { ?>
<tr>
<td><?=$valor["mat_titulo"]?></td>
</tr>
<tr>
<td><?=$valor["mat_texto"]?></td>
</tr>
<tr>
<td> </td>
</tr>
<? } ?>
Ou seja, fez um laço para mostrar sua query (que retorna 3 linhas).
BRAVO ! Deu certo....
o X da questão está em usar o "mysql_fetch_array"
$maxRows_rs_materias = 3;
$pageNum_rs_materias = 0;
if (isset($_GET['pageNum_rs_materias'])) {
$pageNum_rs_materias = $_GET['pageNum_rs_materias'];
}
$startRow_rs_materias = $pageNum_rs_materias * $maxRows_rs_materias;
mysql_select_db($database_bravonews, $bravonews);
$query_rs_materias = "SELECT * FROM bravonews2 ORDER BY mat_id";
$query_limit_rs_materias = sprintf("%s LIMIT %d, %d", $query_rs_materias, $startRow_rs_materias, $maxRows_rs_materias);
$rs_materias = mysql_query($query_limit_rs_materias, $bravonews) or die(mysql_error());
$row_rs_materias = mysql_fetch_array($rs_materias);
MILHÕES DE OBRIGADOS h4v3st!!!
William estou editando minha página no Dreamweaver... puxei os 3 campos no recorset de forma automática...
Faz um ORDER BY mat_id DESC na query que trás os dados do banco, para organizar em ordem decrecente, ou seja, da ultima para a primeira.
Faça tb um LIMIT 3, para trazer apenas 3 registros.
Então, com essa query, basta fazer o laço, colocando os registros que a query te trouxe.
Como você fez 'o Recordset'?