Jump to content


Photo

Array Bidimensional


  • Faça o login para participar
5 replies to this topic

#1 rccintranf

rccintranf

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino

Posted 27/02/2012, 09:13

Bom Dia,

Tenho a seguinte tela abaixo:

Posted Image

Para essa tela tenho o seguinte código:

<!DOCTYPE html>
<html>
<head>
<title>Lista de Presença</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<script language="javascript" type="text/javascript" src="arquivo_ajax.js"></script>
</head>
<body>
        <?php
        
        echo '<form method="post" action="copyteste.php">';
        
        $curso = $_POST['curso'];
        $turma = $_POST['turma'];
        $anoatual = date("Y");
          
        if(empty($curso) && empty($turma))
          {
                echo '<p>Curso: <select name="curso" onchange="javascript:mudar(this.value);"><option value="">Selecione um curso</option>';    
                
                $sql = "SELECT CodCur,NomCur
                                  FROM tbl_000cur
                          ORDER BY CodCur";
                $res = mysql_query( $sql );
                while ( $row = mysql_fetch_assoc( $res ) ) 
                  {
                        $cursoselecionado = $row['CodCur'];
                        echo '<option value="'.$row['CodCur'].'">'.$row['NomCur'].'</option>';
                  }
                  
                echo '</select></p>';
          }
        else
          {
                echo '<p>Curso: <select name="curso" onchange="javascript:mudar(this.value);"><option value="">Selecione um curso</option>';    
                
                $sql = "SELECT CodCur,NomCur
                                  FROM tbl_000cur
                          ORDER BY CodCur";
                $res = mysql_query( $sql );
                while ( $row = mysql_fetch_assoc( $res ) ) 
                  {
                        $cursoselecionado = $row['CodCur'];
                        
                        if($curso == $cursoselecionado)
                          {
                            echo '<option value="'.$row['CodCur'].'" selected="selected">'.$row['NomCur'].'</option>';
                      }
                        else
                          {
                            echo '<option value="'.$row['CodCur'].'">'.$row['NomCur'].'</option>';
                      }                     
                  }
                  
                echo '</select></p>';
        }                 
    
        echo '<div id="mostraCombo"><p>Turma: <select name="turma"><option value="">Selecione um curso primeiro</option></select></p></div>';

        echo '<p><input type="submit" name="enviar" value="Abrir Chamada" /></p>';
        
        echo '</form>';
        
        if(!empty($curso) && !empty($turma))
      {
                echo '<form method="post" action="gravar.php">';
                        
                // montando a tabela
                echo '<table border="1" width="100%" class="chamada">';
                        
                echo '<tr><th>Alunos</th>';
            
                $sql = "SELECT DatAul 
                          FROM tbl_002aul
                 WHERE CodCur = '$curso'
                                   AND CodTur = '$turma'          
                                   AND AnoTur = '$anoatual'
                          ORDER BY CodTur";
            $query = mysql_query($sql);
                while($dados = mysql_fetch_assoc($query))
                  {
                     $data = $dados['DatAul'];
                     $data = explode('-', $data);
                     $datacompleta = $data[2].'/'.$data[1].'/'.$data[0];
                         $data = $data[2].'/'.$data[1];
                         echo '<th>',$data,'</th>';
                     $aux_data++;
                ?>  
                     <input type="text" name="datacompleta[]" value = "<?php echo $datacompleta; ?>">
                         <input type="text" name="data[]" value = "<?php echo $data; ?>">
                
                <?php
                  }     
        
                echo '</tr>';
                
                $sql = "SELECT CodAlu,NomAlu
                                  FROM tbl_002alu
                                 WHERE CodCur = '$curso'
                                   AND CodTur = '$turma'
                                   AND AnoTur = '$anoatual'  
                          ORDER BY CodAlu";
                $query = mysql_query($sql);
                while ( $row = mysql_fetch_assoc($query) ) 
                  {
                        $codalu = $row['CodAlu'];
                        echo '<tr><td>'.$row['NomAlu'].'</td>';
                        ?>
                        <input type="text" name="codalu[]" value="<?php echo $codalu; ?>">
                
                        <?php
                        $aux_aluno++;
                        
                        for($i=1;$i<=$aux_data;$i++)
                          {
                            ?>
                                
                                <td><select name="presenca">
                                        <option value="P"> P</option>
                                                        <option value="A"> A</option>
                                                        <option value="AJ">AJ</option>
                                         </select>
                            </td><?php                             
                          } 
                        echo '</tr>';
                  }
                
                echo '</table>';
                
                printf('<input type="hidden" name="curso"     value="%d" />
                            <input type="hidden" name="turma"     value="%d" />
                            <input type="hidden" name="anoatual"  value="%d" />
                            <input type="hidden" name="aux_data"  value="%d" />
                                <input type="hidden" name="aux_aluno" value="%d" />', $curso, $turma, $anoatual, $aux_data, $aux_aluno
                );
                        
                echo '<p><input type="submit" name="enviar" value="Gravar Frequencia" /></p>';
                echo '</form>';
      }
?>
</body>
</html>


Dessa forma gostaria de saber como que eu após o submit busco o valor do <select> que está exibindo a presença (P)? Ou seja, como eu sei que o "Nome Aluno 2" esta "P" - presente no dia "11/02" ?

No aguardo,
Rafael Cintra

Edição feita por: rccintranf, 27/02/2012, 09:14.


#2 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 27/02/2012, 14:07

Rapaz, lê com cuidado a resposta que dei no outro tópico. Você está no caminho certo. Precisa agora é vincular o select aos dados. A melhor maneira é através do nome dele:

<select name="presenca_<?php echo $codalu . '_' . $i ?>">

Na outra resposta tem isso melhor.

#3 rccintranf

rccintranf

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino

Posted 27/02/2012, 18:45

Ola LeoB,

Ja tentei me revirei aqui mas em cima do meu codigo nao estou conseguindo proceder como deveriar... ao tentar ir para a pagina que devo recuperar os valores nenhum valor é recuperado.... se puder em cima do meu codigo exemplificar agradeço.


Grato !

#4 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 27/02/2012, 21:24

<?php
...
for($i=1;$i<=$aux_data;$i++)
{
?>

<td><select name="presenca_<?php echo $codalu . '_' . $i ?>">
<option value="P"> P</option>
<option value="A"> A</option>
<option value="AJ">AJ</option>
</select>
</td><?php
}
...
?>

Depois que submeter:

<?php
...

$datas = array();

$sql = "SELECT DatAul
FROM tbl_002aul
WHERE CodCur = '$curso'
AND CodTur = '$turma'
AND AnoTur = '$anoatual'
ORDER BY CodTur";
$query = mysql_query($sql);
while($dados = mysql_fetch_assoc($query))
{
$datas[] = $dados['DatAul'];
}

$aux_data = intval($_POST['aux_data']);

$sql = "SELECT CodAlu
FROM tbl_002alu
WHERE CodCur = '$curso'
AND CodTur = '$turma'
AND AnoTur = '$anoatual'
ORDER BY CodAlu";
$query = mysql_query($sql);
while ( $row = mysql_fetch_assoc($query) )
{
$codalu = $row['CodAlu'];
for($i=1;$i<=$aux_data;$i++)
{
$data = $datas[$i];
$presenca = $_POST['presenca_' . $codalu . '_' . $i];
// Aqui você tem tudo de que precisa.
// É só fazer o update ou insert onde tiver que fazer.
}
}
...
?>

Edição feita por: LeoB, 27/02/2012, 21:34.


#5 rccintranf

rccintranf

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino

Posted 27/02/2012, 22:23

Boa Noite,

Eu ja havia conseguido e estava para responder no forum... quebrei um pouco a cabeça aqui e funcionou. Um pouco diferente do que postou mas as dicas foram demais.

Muito obrigado!!
Rafael

#6 looners

looners

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Feminino
  • Localidade:danmark

Posted 02/03/2012, 14:46

Você está no caminho certo. Precisa agora é vincular o select aos dados. Posted Image




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq