The problem is that you are zeroing the values for every PHP call.
Here's a very simplified example of how to persist data between clicks:
<?php
if( isset( $_POST['mes'] ) ) {
$mes = 0 + $_POST['mes'];
} else {
$mes = 0 + date('m');
}
if( @$_POST['btn'] == '-' ) {
$mes--;
} else if( @$_POST['btn'] == '+' ) {
$mes++;
}
echo "Mes: $mes<br>";
echo '<form method="post">';
echo '<input type="submit" name="btn" value="-">';
echo '<input type="submit" name="btn" value="+">';
echo '<input type="hidden" name="mes" value="'.$mes.'">';
echo '</form>';
?>
And before anyone complains, deletion in PHP is for that very reason. It's to use where there's no problem. ISSET in such a case does not make sense.