Dua hal:
1.Ubah
echo "<select name='train_name' id='train_name' multiple='multiple'>";
untuk
echo "<select name='train_name[]' id='train_name' multiple='multiple'>";
2.Ubah
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();
}
untuk
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();
}
Sesuaikan saja tanda kutip dalam kueri karena saya belum menguji kode ini dan merasa akan ada masalah dengan tanda kutip tunggal.
Apa yang dilakukan di atas adalah bahwa kita telah mengambil input dalam sebuah array dan dengan demikian mengambil hasilnya berdasarkan input array ini.
Semoga Anda mendapatkan idenya!!