Dit komt omdat ORDER BY
gebruikt een database-ID (dwz een kolom, alias of uitdrukking). U geeft de waarde door als parameter.
Met andere woorden, de resulterende zoekopdracht zou gelijk zijn aan
... ORDER BY 'StartTime' ...
Als u de gebruikersinvoer valideert tegen een bekende set waarden (dwz de beschikbare kolommen), kunt u de waarde eenvoudig interpoleren in de queryreeks, bijvoorbeeld (zeer ruw)
$orderBy = $_GET['order_by'];
if (!in_array($orderBy, $orderableColumns)) {
throw new Exception('Invalid "order by" specified');
}
$query = sprintf('... ORDER BY `%s` ...', $orderBy);