Pessoal estou tendo problemas para inserir dados em um bd. O erro que está sendo gerado me diz que estou passando uma qtde de parâmetros diferente do que está na query do PDO. Porém estou passando todos os parâmetros corretamente ao meu ver.
Porém algo que me deixou em dúvida e que eu acho que pode ser o erro é o seguinte: Eu faço uma query para inserir dados na tabela chamadas, e depois mando como parâmetro (dentro de um while), dados de outra consulta.
Código de inserção:
`<?php
// pagina inserir aula de chamadas.php
include(‘conecta.php’);
//$idaula = $_POST[‘idaula’];
extract($_POST);
// imprime os dados do post
// loop para cada idaula adicionado
foreach ($idaula as $value) {
// Pesquisa horario pelo idaula, colocando 1 horario por vez no bd
$stmt2 = $conn->prepare('SELECT *FROM aulas WHERE id= :idaula');
$stmt2->bindValue(':idaula', $value);
$stmt2->execute();
//echo "Id: $value";
$stmt = $conn->prepare('INSERT INTO chamadas (codusuario, horario, coddisciplina) VALUES(?, ?, ?)');
$stmt->bindParam(1, $coduser, PDO::PARAM_INT); // passa cod usuario pelo array, 1 por vez
while ($linha = $stmt2->fetch(PDO::FETCH_ASSOC)) {
$disciplina = $linha['coddisciplina'];
$horario = $linha['horario'];
$stmt->bindParam(2, $horario, PDO::PARAM_INT); // add campo disciplina na query anterior
$stmt->bindParam(3, $horario, PDO::PARAM_INT); // add horario na query anterior
}
$stmt->execute();
}`
