Conseiller municipal et adjoint au maire de Roquefort-les-Pins de 1977 à 1983, il est élu premier édile de la commune le 13 mars 1983. Cinq ans plus tard, il fait son entrée au conseil général des Alpes-Maritimes en étant élu conseiller général du canton du Bar-sur-Loup. Constamment réélu à la mairie et au département, il est par ailleurs vice-président du conseil général chargé de l'aide aux communes de 2007 à 2011.
À la suite de l'entrée de Jean Leonetti au gouvernement, dont il était le suppléant lors de cette mandature, il devient député de la 7e circonscription des Alpes-Maritimes à partir du . À l'Assemblée nationale, il siège au sein du groupe UMP et est membre de la commission des affaires sociales.
Il démissionne alors de son poste de conseiller général et cède sa place à sa suppléante Françoise Gioanni.
Reconduit dans ses fonctions de maire en 2014, il est candidat de la majorité départementale dans le canton de Villeneuve-Loubet, en binôme avec Marie Benassayag, lors des élections départementales de 2015 et est élu dès le premier tour avec 52,46 % des suffrages.
En 2017, à la suite de l'élection de Charles-Ange Ginésy à la présidence du conseil départemental, il devient vice-président chargé du numérique. Il est réélu maire en mars 2020 et conseiller départemental l'année suivante.