Como não repetir os dados exibidos de uma tabela?
Gente, por favor me ajude, empaquei com o meu código nesse problema, e não consegui sair.
É o seguinte, estou criando um sistema de matrícula online, para faculdade, onde na página das disciplinas disponíveis para cursar, estarão exibidas, as disciplinas que o aluno perdeu, e que vai estar disponível para ele cursá-la novamente, e a outra exibição será das disciplinas novas, que o aluno poderá selecionar quais queres cursar. O problema é que, estou fazendo a exibição dos dados das disciplinas perdidas assim:
<?php
$sql_1 = mysql_query("SELECT * FROM notas_aluno WHERE matricula_aluno_notas = '$codigo' AND situacao != 'MT' AND situacao != 'AF' AND situacao != 'PF' AND situacao != 'AM'");
while($res_1 = mysql_fetch_array($sql_1)){
$disci_nota = $res_1['disciplina_nota'];
$situacao = $res_1['situacao'];
?>
<tr>
<td><?php $sql_3 = mysql_query("SELECT * FROM disciplinas WHERE id_disc = '$disci_nota'");
while($res_3 = mysql_fetch_array($sql_3)){
$id_prof = $res_3['professor'];
$id_disc = $res_3['id_disc'];
?>
<div class="col-md-4">
<label class="check"><input type="checkbox" class="icheckbox"/></label>
</div>
</td>
<td><?php echo $res_3['nome_disc']; ?></td>
<td><?php echo $res_3['turma']; ?></td>
<td><?php echo $res_3['horas']; ?></td>
<td><?php echo $res_3['turno']; ?></td>
<td><?php echo $res_3['horario']; ?></td>
<td><?php echo $res_3['dia']; ?></td>
<td><?php $sql = mysql_query("SELECT * FROM dados_prof WHERE id_prof = '$id_prof'");
$contar = mysql_num_rows($sql);
if ($contar <='0'){
echo "Não definido";
}else {
while ($rs = mysql_fetch_array ($sql)){
$nome_prof = $rs['1'];
echo $nome_prof; }?></td>
</tr>
<?php }}}?>
Ignorem o HTML, foquem no código php. Bem, como podem ver, dependo de fazer esse select:
(SELECT * FROM notas_aluno WHERE matricula_aluno_notas = '$codigo' AND situacao != 'MT' AND situacao != 'AF' AND situacao != 'PF' AND situacao != 'AM'")
para que ele mostre apenas as disciplinas onde 'situacao' for diferente das siglas de MT = Matriculado, AF = Aprovado na Prova Final, PF = Vai para a Prova Final, AM = Aprovado por média. Pois, não faz sentido o aluno se matricular nem nenhuma disciplina já passada, ou matriculada. Bom, e o outro código é na mesma página que exibe este, e eles está desse jeito:
<?php $sql_3 = mysql_query("SELECT * FROM disciplinas WHERE id_disc != '$disci_nota' AND curso = '$id_do_curso'");
while($res_3 = mysql_fetch_array($sql_3)){
$id_prof = $res_3['professor'];
?>
<td>
<div class="col-md-4">
<label class="check"><input type="checkbox" class="icheckbox"/></label>
</div>
</td>
<td><?php echo $res_3['nome_disc']; ?></td>
<td><?php echo $res_3['turma']; ?></td>
<td><?php echo $res_3['horas']; ?></td>
<td><?php echo $res_3['turno']; ?></td>
<td><?php echo $res_3['horario']; ?></td>
<td><?php echo $res_3['dia']; ?></td>
<td><?php $sql = mysql_query("SELECT * FROM dados_prof WHERE id_prof = '$id_prof'");
$contar = mysql_num_rows($sql);
if ($contar <='0'){
echo "Não definido";
}else {
while ($rs = mysql_fetch_array ($sql)){
$nome_prof = $rs['1'];
echo $nome_prof; }?></td>
</tr>
<?php }}?>
O problema maior está neste código, ele mostra para mim todas as disciplinas, mas eu preciso que apareça apenas as outras disciplinas que estejam disponíveis para cursar, com exceção das que já foram exibidas lá nas disciplinas perdidas e que o aluno irá cursar novamente (primeiro código). Este código está exibindo todas as disciplinas, inclusive repetindo as do primeiro código, não sei mais o que fazer.
Me ajude!!! Grato, desde já!Discussão (5)
Carregando comentários...