Deux choses :
1.Modifier
echo "<select name='train_name' id='train_name' multiple='multiple'>";
à
echo "<select name='train_name[]' id='train_name' multiple='multiple'>";
2.Modifier
function getAllAssoc() {
$sql = "SELECT * FROM train_information WHERE train_name = :train_name";
$sth = $this->pdo->prepare($sql);
$sth->bindParam(":train_name", $_POST["train_name"]);
$sth->execute();
return $sth->fetchAll();
}
à
function getAllAssoc() {
$sql = "SELECT * FROM train_information WHERE train_name IN(:train_name)";
$sth = $this->pdo->prepare($sql);
$sth->bindParam(":train_name", implode(",",$_POST["train_name"]));
$sth->execute();
return $sth->fetchAll();
}
Ajustez simplement les guillemets dans la requête car je n'ai pas testé ce code et je pense qu'il y aura un problème avec les guillemets simples.
Ce qui est fait ci-dessus, c'est que nous avons pris les entrées dans un tableau et récupéré en conséquence les résultats basés sur cette entrée de tableau.
J'espère que vous avez saisi l'idée !