Peut etre que :
dans ton constructeur,
$this->result = $class_input->prepare($this->requete)

/on prepare la requête
$this->result->execute()

/On execute la requête
Je ne connais pas vraiment la classe PDO, mais.. j'aurai pas penser qu'un "prepare" retourne un objet..
j'aurai plutot fait comme dans la doc de ¨PDO
PDO->query()
PDO->execute (ou un truc du genre) car, dans une petite logique, se qui doit executé une requet, c'est bien un objet lié intimement à la BDD, donc plutot PDO.. enfin bon..
Ensuite, pour le coups de ton iteration, dans la doc que tu fournis, il est dit que se sont les attributs de classe qui sont utilisés, ainsi que les fonctions, mais uniquement celle qui sont public non ?
Par defaut, la declaration d'une fonction comme tu le fais
function nomDeFonction (), c'est pas protected ? ou private ?