Parameter binding is essential for protecting your web application from SQL-injection. Pretty much all data which is going to be used in SQL statement needs binding. Binding simply saying is just a way to tell engine that a particular piece of data is a string, number, character and so on. By doing this special characters like quotes and double quotes, semi-colons, etc. won’t be interpreted as commands by the database.
Example:
public function dbSelect($table, $fieldname=null, $id=null) { $this->conn(); $sql = "SELECT * FROM `$table` WHERE `$fieldname`=:id"; $stmt = $this->db->prepare($sql); $stmt->bindParam(':id', $id); $stmt->execute(); return $stmt->fetchAll(PDO::FETCH_ASSOC); }