safeLoad(); session_start(); if (!isset($_GET['code'])) { // header('Location: http://localhost:9753'); header('Location: https://login.joshashton.dev'); exit; } $client_id = $_ENV['SPOTIFY_CLIENT_ID']; $client_secret = $_ENV['SPOTIFY_CLIENT_SECRET']; $_SESSION['code'] = $_GET['code']; ?> Favorite Albums 'authorization_code', 'code' => $auth_code, // 'redirect_uri' => 'http://localhost/music/explore' 'redirect_uri' => 'https://cs2440.joshashton.dev/music/explore' ); $client_info = base64_encode("$client_id:$client_secret"); $post_data = http_build_query($data); $ch = curl_init($url); curl_setopt_array($ch, array( CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => array( "Authorization: Basic $client_info", 'Content-Type: application/x-www-form-urlencoded' ), CURLOPT_POSTFIELDS => $post_data )); $response = curl_exec($ch); if (curl_errno($ch)) { echo curl_error($ch); } else { $data = json_decode($response, true); curl_close($ch); return $data['access_token']; } curl_close($ch); } function get_songs($auth_code, $client_id, $client_secret) { if ($_SESSION['data'] == null) { $access_token = get_access_token($auth_code, $client_id, $client_secret); $url = 'https://api.spotify.com/v1/me/top/tracks?time_range=long_term'; $ch = curl_init($url); curl_setopt_array($ch, array( CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => array( "Authorization: Bearer $access_token" ) )); $response = curl_exec($ch); if (curl_errno($ch)) { echo curl_error($ch); return; } else { $data = json_decode($response, true); $top_songs = $data['items']; } curl_close($ch); $song_data = []; foreach ($top_songs as $song) { $song_data[] = array( 'image' => $song['album']['images'][0]['url'], 'song_name' => $song['name'], 'song_id' => $song['id'], 'album_name' => $song['album']['name'], 'album_id' => $song['album']['id'], 'artist' => $song['artists'][0]['name'], 'artist_id' => $song['artists'][0]['id'], ); } $_SESSION['data'] = $song_data; } else { $song_data = $_SESSION['data']; } echo '
'; echo '

Your Favorite Songs

'; echo '
'; foreach ($song_data as $s) { echo ' '; } echo '
'; echo '
'; } ?>