Идеята на подготвените оператори е, че не свързвате променливи, вместо това обвързвате параметрите. Разликата е, че променливата никога не се вмъква в SQL, а MySQL машината обработва променливата отделно, което не оставя възможност за SQL инжекция. Това също има допълнителния бонус, че не се изисква екраниране или предварителна обработка на променливата.
$query = $db->prepare("SELECT password FROM login WHERE username = :username");
$query->execute(array(':username' => $username));