Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Formular ausgewählt zur nächsten Seite

Zwei Dinge:

1.Ändern

echo "<select name='train_name' id='train_name' multiple='multiple'>";

zu

echo "<select name='train_name[]' id='train_name' multiple='multiple'>";

2.Ändern

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();
    }

zu

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();
    }

Passen Sie einfach die Anführungszeichen in der Abfrage an, da ich diesen Code nicht getestet habe und der Meinung bin, dass es ein Problem mit einfachen Anführungszeichen geben wird.

Was oben getan wird, ist, dass wir die Eingaben in ein Array aufgenommen haben und dementsprechend die Ergebnisse basierend auf dieser Array-Eingabe abgerufen haben.

Hoffe du verstehst die Idee!!