PHP Discord OAUTH2 code sample not working



PHP Snippet 1:

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

session_start();
$SecretHERE = "";
$IDHERE = "";

if (isset($_GET["error"])) {
    echo json_encode(array("message" => "Authorization Error"));
} elseif (isset($_GET["code"])) {
    $redirect_uri = "https://www.devtest.net/v4/login.php";
    $token_request = "https://discordapp.com/api/oauth2/token";

    $token = curl_init();

    curl_setopt_array($token, array(
        CURLOPT_URL => $token_request,
        CURLOPT_POST => 1,
        CURLOPT_POSTFIELDS => array(
            "grant_type" => "authorization_code",
            "client_id" => $IDHERE,
            "client_secret" => $SecretHERE,
            "redirect_uri" => $redirect_uri,
            "code" => $_GET["code"]
        )
    ));

    curl_setopt($token, CURLOPT_RETURNTRANSFER, true);

    $resp = json_decode(curl_exec($token));
    curl_close($token);

    if (!isset($_SESSION['user']) || !isset($_SESSION['userguilds'])) {
        if (isset($resp->access_token)) {
            $access_token = $resp->access_token;

            $info_request = "https://discordapp.com/api/users/@me";
            $info_request_guilds = "https://discord.com/api/users/@me/guilds";

            $info = curl_init();
            curl_setopt_array($info, array(
                CURLOPT_URL => $info_request,
                CURLOPT_HTTPHEADER => array(
                    "Authorization: Bearer {$access_token}"
                ),
                CURLOPT_RETURNTRANSFER => true
            ));

            $user = json_decode(curl_exec($info));
            curl_close($info);

            // GUILDS REQUEST
            $info_guilds = curl_init();
            curl_setopt_array($info_guilds, array(
                CURLOPT_URL => $info_request_guilds,
                CURLOPT_HTTPHEADER => array(
                    "Authorization: Bearer {$access_token}"
                ),
                CURLOPT_RETURNTRANSFER => true
            ));

            $guilds = json_decode(curl_exec($info_guilds));
            curl_close($info_guilds);

            $_SESSION['user'] = $user;
            if ($_SESSION['user']->verified == 1) {
                $_SESSION['userguilds'] = $guilds;
                $_SESSION['avatar'] = "https://cdn.discordapp.com/avatars/" . $user->id . "/" . $user->avatar . ".png";

                header("Location: https://www.devtest.net/v4/fork.php");
                die();
            }else{
                print_r("Please verify your Discord Account.");
                session_destroy();
                die();
            }

        } else {
            echo json_encode(array("message" => "Authentication Error"));
        }
    } else{
        // They are already logged in so redirect them to fork.php
        header("Location: https://www.devtest.net/v4/fork.php");
        die();
    }
} else {
    // Redirect to Discord Oauth2 URL (CAN BE FOUND IN DISCORD DEV PORTAL)
    header('location: https://discord.com/api/oauth2/authorize?client_id=CLIENTIDHERE&redirect_uri=https%3A%2F%2Fwww.devtest.net%2Fv4%2Flogin.php&response_type=code&scope=identify%20email%20connections%20guilds%20guilds.join');
    die();
}

?>