Vou procurar explicar o que esta acontecendo. Tenho o seguinte código: <table>
<tr>
<th>Nome</th>
<th>Cidade</th>
<th>Data Rec. Venc.</th>
<th>Previsão</th>
<th>Marcado</th>
<th>Ed.</th>
<tr>
<?php
$sel_marcado = "SELECT * FROM tab_marcado";
$exec_sel_marcado = mysql_num_rows(mysql_query($sel_marcado));
if ($exec_sel_marcado <= 0) {
$reciclagens = "SELECT * FROM tab_reciclagem WHERE num_ativo = '1' AND num_marcado = '1'";
} else {
$reciclagens = "SELECT * FROM tab_reciclagem, tab_marcado WHERE num_ativo = '1' AND num_marcado = '1' ORDER BY dt_marcado_inicio ASC";
}
$exec_reciclagens = mysql_query($reciclagens);
while ($reciclagens = mysql_fetch_array($exec_reciclagens)) {
$id_reciclagem = $reciclagens['id_reciclagem'];
$num_cidade = $reciclagens['num_cidade'];
$cidade = "SELECT * FROM tab_cidade WHERE id_cidade = '$num_cidade'";
$exec_cidade = mysql_query($cidade);
$cidade = mysql_fetch_array($exec_cidade);
$dt_rec_venc = $reciclagens['dt_rec_venc'];
$dt_rec_venc_br = substr($dt_rec_venc,8,2) . "/" . substr($dt_rec_venc,5,2) . "/" . substr($dt_rec_venc,0,4);
$dt_rec_prev = $reciclagens['dt_rec_prev'];
$dt_rec_prev_br = substr($dt_rec_prev,5,2) . "/" . substr($dt_rec_prev,0,4);
?>
<tr>
<td><?php echo $reciclagens['str_nome']; ?></td>
<td><?php echo $cidade['str_cidade']; ?></td>
<td><?php echo $dt_rec_venc_br; ?></td>
<td><?php echo $dt_rec_prev_br; ?></td>
<td>
<?php
$marcado = "SELECT * FROM tab_marcado WHERE id_reciclagem_marc = '$id_reciclagem'";
$exec_marcado = mysql_query($marcado);
$marcado = mysql_fetch_array($exec_marcado);
if ($marcado == "") {
?>
<form action="reciclagem_marcada.php" method="POST">
<input type="text" name="dt_marcada_inicio" size="8" onkeypress="DataHora(event, this)" maxlength="10"> à
<input type="text" name="dt_marcada_fim" size="8" onkeypress="DataHora(event, this)" maxlength="10">
<input type="hidden" name="id_rec_marcada" value="<?php echo $id_reciclagem; ?>">
<input type="submit" value="ok">
</form>
<?php
} else {
$rec_dt_marcado_inicio = $marcado['dt_marcado_inicio'];
$rec_dt_marcado_inicio_br = substr($rec_dt_marcado_inicio,8,2) . "/" . substr($rec_dt_marcado_inicio,5,2) . "/" . substr($rec_dt_marcado_inicio,0,4);
$rec_dt_marcado_fim = $marcado['dt_marcado_fim'];
$rec_dt_marcado_fim_br = substr($rec_dt_marcado_fim,8,2) . "/" . substr($rec_dt_marcado_fim,5,2) . "/" . substr($rec_dt_marcado_fim,0,4);
echo $rec_dt_marcado_inicio_br . " à " . $rec_dt_marcado_fim_br;
}
?>
</td>
<td><a href="editar_reciclagem_marcada.php?id=<?php echo $reciclagens['id_reciclagem']; ?>&marcada=1"><img src="images/btn_editar.png" border="0" width="16" height="16"></a></td>
</tr>
<?php } ?>
</table> Como podem notar no código $reciclagens = "SELECT * FROM tab_reciclagem, tab_marcado WHERE num_ativo = '1' AND num_marcado = '1' ORDER BY dt_marcado_inicio ASC"; eu pego informações de 2 tabelas com algumas condições e faço o loop com o while para aparecer todos os dados do select. O problema é que ele esta me retornando várias vezes um mesmo registro, por exemplo, se tem 6 registros na tab_marcado ele vai me retornar 6 vezes o mesmo dado da tab_reciclagem para depois ir para o próximo id. Espero que eu possa ter me expressado bem. Alguém sabe aonde esta o erro? Grato