Идея кода, приведенного ниже, состоит в том, чтобы сделать «Оповещение об отмене подписки» для пользователей / стримеров Twitch. Концепция: Twitch api дает мне список текущих подписчиков канала, который в моем коде, если я найду новое имя, я положить его в базу данных под именем последователя и то же самое для последующего времени. Моя проблема: я не могу получить SQL-код для понимания и сравнения текущих подписчиков с базой данных и отображения подписчика, который отсутствует в API, но отсутствует в базе данных.
<?php
$connection = new mysqli("localhost","root","","twitchun");
$channelsApi = 'https://api.twitch.tv/helix/users/follows?
to_id=176714165&first=10';
$channelName = '';
$clientId = 'pm7oxir9hxzhrl0hnzdxdrg';
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_HTTPHEADER => array(
'Client-ID: ' . $clientId
),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_URL => $channelsApi . $channelName
));
$response = curl_exec($ch);
curl_close($ch);
//echo $response;
$json = json_decode($response, true);
foreach ($json['data'] as $names){
echo '<p>'.$names['from_name'].'</p>';
}
foreach ($json['data'] as $names){
$result = $connection->query("SELECT follower_name FROM followers WHERE
follower_name = '".$names['from_name']."'");
if($result->num_rows == 0) {
//if follower doesnt exist in database put him in
mysqli_query($connection, 'INSERT into followers(follower_name,
follow_time) VALUES ("'.$names['from_name'].'",
"'.$names['followed_at'].'")');
} else {
//if follower exists in database and in json
}
часть, где это не работает
$fnames= $names['from_name'];
$result2 = $connection->query("SELECT follower_name FROM followers WHERE
follower_name <> '".$fnames."' order by follow_time desc");
$unfollow = mysqli_fetch_assoc($result2);
foreach($unfollow as $unfollower){
echo '<p style="color:red">'.$unfollower.'</p>';
}
}