Eu acho que você está dizendo que uma vez que o curso é selecionado, ele não deve ser exibido na próxima página onde o aluno pode dar uma olhada nos outros cursos?
Se for assim, você pode usar a seguinte consulta sql na próxima página onde você não deseja exibir o curso concluído do aluno.
SELECT * FROM course WHERE id != $course_id
Deixe-me saber se eu estiver errado. Eu não comentei porque minha reputação estava baixa e o stackoverflow não me permitiu.
[EDITADO]
Este é o seu código completo.
//assuming that you are logging in the students with their username or email id, if so then store their username in a session where logging in.
<?php
$user = $_SESSION['username'];
include("includes/connect.php");
if (isset($_POST['submit'])){
$course_id= $_POST['course_id'];
$course_title= $_POST['course_title'];
$course_credits= $_POST['course_credits'];
$course_status= $_POST['course_status'];
$query="SELECT course.id,course.title,course.credits,course.status FROM course WHERE course.username = $user";
$run=mysqli_query($conn,$query);
while($row=mysqli_fetch_array($run)){
$course_id= $_SESSION['course_id'] = $row['course_id'];
$course_title=$row['course_title'];
$course_credits=$row['course_credits'];
$course_status=$row['course_status'];
}
?>
$already_selected_course = $_SESSION['course_id'];
Now the query should look like.
$query = "SELECT course.id,course.title,course.credits,course.status FROM course WHERE course.id != $already_selected_course";
É isso. Nota:Esta solução pode conter alguns erros de colchetes etc, mas a lógica é clara.
Para conhecer melhor, dê uma olhada na minha MySQL Complete Video Series aqui!