Так сходу сложно определить, тем более протестировать.
Предлагаю дебажить построчно:
Начните с того, что убедитесь, что эта функция возвращает данные.
file_get_contents("https://api.vk.com/method/docs.getWallUploadServer?group_id={$group_id}&access_token={$rows[0]['token_group']}&v={$v}")
Далее убедитесь, что вот этот класс рабочий
new CURLFile(dirname(__FILE__)."/123.png")
Потом эту функцию проверьте, возвращает ли она что-то
curl($getWallUploadServer['response']['upload_url'], array("file1" => new CURLFile(dirname(__FILE__)."/123.png")));
Если есть вожможность, то выкладывайте сюда отладочные печати.