Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde, estou me deparando com um problema simples em php, tenho os dados de minha tabela de provas em uma combobox, conforme script listar_notas.php, o que eu quero fazer e não estou conseguindo, é, capturar o id dessa combobox, conforme variavel $teste, e após isso fazer um select e exibir os dados na tela, conforme script lanc_notas.php, o que será que estou fazendo de errado, estou chamando a variavel $teste = $_POST['id_prova']; no lugar errado?...alguém ai tem uma luz, sou iniciante em php...
listar_notas.php
<?php
include_once("conexao.php");
if (isset($_SESSION['usuarioId'])){
$userLogado = $_SESSION['usuarioId'];
}
?>
<link href="css/app.css" rel="stylesheet">
<div class="container theme-showcase font_roboto" role="main">
<div class="page-header">
<h2>Lista de Notas</h2>
</div>
<!--Carrego aqui o select das provas cadastradas -->
<div class="row espaco">
<label class="col-sm-2 control-label">Prova</label>
<div class="col-sm-10">
<select class="form-control font_roboto" name="id_prova">
<?php
#Include the connect.php file
/* check connection */
if (mysqli_connect_errno()){
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT * FROM provas
where provas.instrutor = '$userLogado' order by 'descricao'";
$result = mysqli_query($conectar,$query);
while ($rows = mysqli_fetch_array($result)) {
echo "<option value=" .$rows['id']. ">" .$rows['descricao']."</option>";
}
?>
</select>
</div>
</div>
<div class="row espaco">
<div class="pull-right">
<?php
$teste = $_POST['id_prova'];
?>
<a href="administrativo.php?link=15"><button type='button' class='btn btn-success estilobotao'>Carregar</button></a>
</div>
</div> <!-- /container -->
lanc_notas.php
<?php
include_once("conexao.php");
if (isset($_SESSION['usuarioId'])){
$userLogado = $_SESSION['usuarioId'];
}
?>
<link href="css/app.css" rel="stylesheet">
<div class="container theme-showcase font_roboto" role="main">
<div class="page-header">
<h2>Lista de Notas</h2>
</div>
<!--Carrego aqui o select das provas cadastradas -->
<?php
?>
<div class="row espaco">
<div class="pull-right">
<a href="administrativo.php?link=15"><button type='button' class='btn btn-success estilobotao'>Carregar</button></a>
</div>
</div>
<div class="row">
<div class="col-md-12">
<table class="table">
<thead>
<tr>
<th>ID</th>
<th>Aluno</th>
<th>Prova</th>
<th>Nota1</th>
<th>Situação</th>
</tr>
</thead>
<tbody>
<?php
$resultado=mysqli_query($conectar,"SELECT * FROM notas_provas
inner join alunos on alunos.id = notas_provas.id_aluno
inner join provas on provas.id = notas_provas.id_prova
WHERE notas_provas.instrutor = '$userLogado' and
notas_provas.id_prova = '$teste' ORDER BY 'id'");
$linhas=mysqli_num_rows($resultado);
while($linhas = mysqli_fetch_array($resultado)){
//$id_turma = $linhas['id_turma'];
//$queryTurma = mysqli_query($conectar,"SELECT * FROM notas_provas
// ORDER BY 'id'");
//$row = mysqli_fetch_array($queryTurma);
echo "<tr>";
echo "<td>".$linhas['id']."</td>";
echo "<td>".$linhas['nome']."</td>";
echo "<td>".$linhas['descricao']."</td>";
echo "<td>".$linhas['nota1']."</td>";
echo "<td>".$linhas['situacao']."</td>";
?>
<td>
<a href='administrativo.php?link=13&id=<?php echo $linhas['id']; ?>'><button type='button' class='btn btn-sm btn-warning estilobotao'>Editar</button></a>
<a href='processa/proc_apagar_nota.php?id=<?php echo $linhas['id']; ?>'><button type='button' onclick="return confirm('Tem certeza que deseja deletar este registro?')" class='btn btn-sm btn-danger estilobotao'>Apagar</button></a>
<?php
echo "</tr>";
}
?>
</tbody>
</table>
</div>
</div>
</div> <!-- /container -->Progjunior Daniel, na combobox eu ja carrego minhas provas cadastradas na tabela de provas no mysql, o que eu quero fazer, é capturar a prova que eu selecionar na combobox, e fazer uma leitura, um select de outra tabela, colocando o dados que capturei da combo como filtro...por ex. $resultado=mysqli_query($conectar,"SELECT * FROM notas_provas inner join alunos on alunos.id = notas_provas.id_aluno inner join provas on provas.id = notas_provas.id_prova WHERE notas_provas.instrutor = '$userLogado' and notas_provas.id_prova = "aqui quero capturar o dados que vem da combobox" ORDER BY 'id'");Você vai ter que usar o jquery ou js para quando mudar o select(html) da prova você usará o ajax para pegar o id dessa prova.
Ex:
Jquery
$('body').on('click', '.nome_da_classe', function(){
var id = $(".nome_da_classe :selected").val();
aqui faria o ajax......
});Então realmente, tentando passar por $_POST, não dá certo, é que sou iniciante, terei que me aprofundar em jquery....pois realmente achei que teria como capturar os dados da combobox por $_POST, pois na comobobox tenho os dados da tabela provas, e ao selecionar uma prova da combobox, queria pegar o id dessa tabela, para fazer um select na tabela de notas_provas que tenho o campo id_prova referenciado, a meu ver seria simples, armazenaria em uma variavel o dado da combobox, e ao fazer o select, lia a variavel e fazia o filtro normal, na combobox carrego as 3 provas cadastradas, conforme a imagem tabela-provas.png, ai queria pegar o id dela, (2,3, ou 4), para fazer um select na tabela notas_provas, conforme imagem tabela-notas_provas.png, quando o campo id_prova fosse por exemplo = 4, que seria na combobox o dado referente a prova Direito... fazendo a leitura manual, colocando o id_prova = 4 la na query, traz a informação normal na tela....$resultado=mysqli_query($conectar,"SELECT * FROM notas_provas inner join alunos on alunos.id = notas_provas.id_aluno inner join provas on provas.id = notas_provas.id_prova WHERE notas_provas.instrutor = '$userLogado' and notas_provas.id_prova = '4' ORDER BY 'id'");
Você tem jquery na página? porque ai é só colocar aquele código
Não tenho, só tenho html e js
Blz, dá pra fazer em js também. Te mandei uma msg vê lá e me responde...
Você quer um combo box que escolher uma prova, ela preenche outra?
Se for isso terá que fazer com js ou jquery para preencher o combo