sql >> Databáze >  >> RDS >> Mysql

Můžete vložit zástupné symboly do vybrané části dotazu pomocí PDO?

Ani náhodou. PDO nemůže dezinfikovat názvy sloupců nebo tabulek.

Pokud opravdu máte Chcete-li používat dynamické názvy tabulek, nejbezpečnějším způsobem, jak se s nimi vypořádat, je nekontrolovat, zda v tabulce skutečně existují, a vkládat je do dotazu běžným způsobem.

Pseudokód:

$fieldname = make_sure_this_field_really_exists($_GET["fieldname"]);    
$PDO->prepare("select name, age, `$fieldname` from members where age > ? and gender = 'f';" ... );



  1. Oracle:Pokud tabulka existuje

  2. seznam výsledků v mysql ze stejné tabulky

  3. drahokam mysql2 zkompilován pro špatnou klientskou knihovnu mysql

  4. Jak hodnoty NULL ovlivňují výkon při vyhledávání v databázi?