body->$name->id.'/recent?api_key='.$key);
//déclaration variables PLAYERS
//indice du nombre de parties
$in=0;
$ia=0;
//assist total
$assistsa=0;
$assistsn=0;
//nombre de morts
$numDeathsa=0;
$numDeathsn=0;
//nombre de kills
$championsKilleda=0;
$championsKilledn=0;
//nombre de gold gagné
$goldEarneda=0;
$goldEarnedn=0;
//boucle de chaque GAME
foreach($q2->body->games as $game){
//subTypes de game ARAM
if($game->subType=="ARAM_UNRANKED_5x5"){
$ia++;
if(isset($game->stats->assists)){$assistsa += $game->stats->assists;}
if(isset($game->stats->numDeaths)){$numDeathsa += $game->stats->numDeaths;}
if(isset($game->stats->championsKilled)){$championsKilleda += $game->stats->championsKilled;}
if(isset($game->stats->goldEarned)){$goldEarneda += $game->stats->goldEarned;}
}
//subTypes de game NORMAL
elseif($game->subType=="RANKED_SOLO_5x5" or $game->subType=="NORMAL"){
$in++;
if(isset($game->stats->assists)){$assistsn += $game->stats->assists;}
if(isset($game->stats->numDeaths)){$numDeathsn += $game->stats->numDeaths;}
if(isset($game->stats->championsKilled)){$championsKilledn += $game->stats->championsKilled;}
if(isset($game->stats->goldEarned)){$goldEarnedn += $game->stats->goldEarned;}
}else{}
/*[FLO => C'EST ICI QUE JE RECUPERE LA VARIABLE game->championId qui est l'ID du champion joué.
et du coup, je voudrais stocker les infos de CETTE partie et les additionner dans la ligne déjà existante de ce champion, dans
une autre table de ma BDD. Le problème qu'il semble y avoir avec le LOAD DATA INFILE que tu me suggères, c'est qu'en gros
ICI je vais écrire une nouvelle ligne dans le fichier avec comme structure Nomdechampion,kill,death exemple sur 3 parties:
"Morgana",10,3
"Teemo",5,7
"caitlyn",12,2
mais le problème c'est que si j'ai denouveau une nouvelle game avec "caitlyn",15,5 il semblerait qu'il n'y ait que 3
paramètres
INFILE, qui renvoie une erreur lors d'une double key unique
REPLACE va simplement remplacer les valeurs de la ligne existante au lieu de les additionner
IGNORE va simplement ignorer les doublons
LOCAL = INGORE
j'espère que mon explication ci - dessus précise mon soucis de stockage des champions
*/
//fin de la boucle de chaque partie
}
//sauvegarde/update des infos players dans la Base des joueurs
mysqli_query($connect,'
INSERT INTO lolkoreus (
summonerId,
summonerName,
profileIconId,
indicea,indicen,
assistsa,assistsn,
numDeathsa,numDeathsn,
championsKilleda,championsKilledn,
goldEarneda,goldEarnedn,
)
VALUES (
'.$q->body->$name->id.',
"'.$q->body->$name->name.'",
'.$q->body->$name->profileIconId.',
'.$ia.','.$in.',
'.$assistsa.','.$assistsn.',
'.$numDeathsa.','.$numDeathsn.',
'.$championsKilleda.','.$championsKilledn.',
'.$goldEarneda.','.$goldEarnedn.'
)
ON DUPLICATE KEY UPDATE
summonerName="'.$q->body->$name->name.'",
profileIconId='.$q->body->$name->profileIconId.',
indicea='.$ia.',indicen='.$in.',
assistsa='.$assistsa.',assistsn='.$assistsn.',
numDeathsa='.$numDeathsa.',numDeathsn='.$numDeathsn.',
championsKilleda='.$championsKilleda.',championsKilledn='.$championsKilledn.',
goldEarneda='.$goldEarneda.',goldEarnedn='.$goldEarnedn
)
or die (mysqli_error($connect).'update error on INSERT/UDATE');
//Fin du calcul du temps de traitement
$timeend=microtime(true);
echo "".$name." : Script execute en ".number_format($timeend-$timestart, 3)." sec
";
//espacement règlementaire pour les requête API chez riot
sleep(1);
}
?>