Syntax wise, it is correct, but the single quotes are unnecessary as you aren't adding anything on to either end of $i
- this would be better:
if($_POST[$i] == 'on')
array_push($requestedParameters, $_POST[$i]);
You should probably check that the key exists as well, since you are using what looks like an arbitrary loop rather than a foreach
type array loop construct:
if(isset($_POST[$i]) && $_POST[$i] == 'on')