Affiche données tableau

patpillon Messages postés 1 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 29 juillet 2009 - 29 juil. 2009 à 03:02
TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 - 29 juil. 2009 à 12:09
Bonjour,
J'ai un script en php et j'aimerais qu'il me retourne les chiffre /donées dans mon tableau, présentement ca me retourne:
Array ( [0] => -1 [1] => -1 [2] => -1 ). j'aimerais avoir en chiffre $bestScore; $meanScore; $worstScore;
merci


$Sql="select * from ResultGame"; //ResultGame = nom de ma table
$Res=mysql_query($Sql);
//$Compteur=mysql_num_rows($Res);

//$i=1;
//$j=0;
//while ($i <= $Compteur)
//{
// $tab_score[$j]==$Enr["ScoreG"]; //ScoreG = la colonne de la table ResultGame dont je souhaite récupérer les informations
// $Enr=mysql_fetch_array($Res);
// $i++;
// $j++;
//}

//print_r($Enr); // OK, me donne la dernière ligne de ma BD avec tous les infos
//print_r($tab_score); //Page blanche
print_r (computeScore($Enr));

?>

<?php

function computeScore($sqlGroup)
{
$currentScore = 0;

$bestScore = -1;

$meanScore = (double) 0;
$sumScore = 0;
$nbScore = 0;

$worstScore = 101;

while ($row = mysql_fetch_assoc($sqlGroup))
{
$currentScore = $row['ScoreG'];


if($currentScore > $bestScore)
{
$bestScore = $currentScore;
}

$sumScore = $sumScore + $currentScore;
$nbScore = $nbScore + 1;

if($currentScore < $worstScore)
{
$worstScore = $currentScore;
}
}

$meanScore = round(($sumScore / $nbScore), 1);

$lstScore = array();

if($worstScore == 101)
{
$worstScore = -1;
}

if($meanScore == 0)
{
$meanScore = -1;
}

$lstScore[0] = $bestScore;
$lstScore[1] = $meanScore;
$lstScore[2] = $worstScore;

return $lstScore;
}

1 réponse

TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
29 juil. 2009 à 12:09
Salut,

Mon pauvre, tu te complique bien la vie. Un conseil: met toi un peu plus dans le SQL, ça t'aidera grandement.

<?php
$sql = 'SELECT MAX(ScoreG) AS bestScore, MIN(ScoreG) AS worstScore, ROUND(AVG(ScoreG)) AS meanScore FROM ResultGame LIMIT 1';
$res = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_object($res);
echo 'bestScore: ', $row->bestScore, ', worstScore: ', $row->worstScore, ', meanScore: ', $row->meanScore, "\n";
?>
0
Rejoignez-nous