Первая проблема заключается в том, что вы проверяете значение $ acc_points в приведенном ниже коде, но вы выполняете запрос независимо от того, является ли он нулевым или недействительным
if(isset($acc_points))
{
$acc_points++;
} // if condition ends here. Insert command will always be executed.
Затем, после того, как команда была выполнена, вы снова проверяете значение
if($acc_points != null) /// insert has already happend.
{
}
Поэтому вы должны перестроить свой код, но, тем не менее, вам совсем не нужен этот подход. Почему не просто?
$result = $con->prepare(" UPDATE `points` SET `acc_points` = acc_points+1 WHERE `acc_id` = ? ");
Это увеличивает значение уже в базе данных.