Gagasan dari pernyataan yang disiapkan adalah Anda tidak menggabungkan variabel, tetapi Anda mengikat parameternya. Perbedaannya adalah variabel tidak pernah dimasukkan ke dalam SQL, melainkan mesin MySQL menangani variabel secara terpisah sehingga tidak ada kemungkinan SQL Injection. Ini juga memiliki bonus tambahan yang tidak memerlukan pelolosan atau pra-pemrosesan variabel.
$query = $db->prepare("SELECT password FROM login WHERE username = :username");
$query->execute(array(':username' => $username));