PHP fonction retourne tableau

zlatan -  
 zlatan - 9 juin 2008 à 09:13
Salu a tous
J'avais un code d'origine (que j'ai commenté pour le repérer) qui fonctionnait mais j'ai besoin de le réutiliser donc je veut le mettre dans une fonction tablo qui a un entier en paramètre et me retourne un tableau à 2 dimension.

<?php
//----------fonction que j'utilise dans la deuxième----------
function sort_items($a, $b)
{
if ($a['points'] != $b['points'])
return $a['points'] <= $b['points'];
elseif ($a['diff'] != $b['diff'])
return $a['diff'] <= $b['diff'];
else
return $a['bp'] <= $b['bp'];
}

function tablo($journeesel)
{
//------------------------------DEBUT DU CODE D'ORIGINE--------------------------------------
$repon = mysql_query("SELECT nomeq FROM equipe ORDER BY points DESC") or die(mysql_error());
while ($nom = mysql_fetch_array($repon) )
{
//------------------Initialisation des tableaux--------------------------
$dom[$nom['nomeq']] = array ("points" => "0","matchjoués" => "0","gagnés" => "0","nuls" => "0","perdus" => "0","bp" => "0","bc" => "0","diff" => "0");
$ext[$nom['nomeq']] = array ("points" => "0","matchjoués" => "0","gagnés" => "0","nuls" => "0","perdus" => "0","bp" => "0","bc" => "0","diff" => "0");
for ($nb = 1; $nb <= $journeesel; $nb++)
{
//-------------------------Equipes domiciles--------------------
$reponsedom = mysql_query("SELECT * FROM matchs WHERE journee='".$nb."' AND equipedom='".$nom['nomeq']."'") or die(mysql_error());
$champsdom = mysql_fetch_array($reponsedom);
if ($champsdom['equipedom']==$nom['nomeq'])
{
if($champsdom['scoredom'] > $champsdom['scorext'])
{$points=3;$gagnés=1;$nuls=0;$perdus=0;}
if($champsdom['scoredom'] == $champsdom['scorext'])
{$points=1;$gagnés=0;$nuls=1;$perdus=0;}
if($champsdom['scoredom'] < $champsdom['scorext'])
{$points=0;$gagnés=1;$nuls=0;$perdus=1;}
$dom[$champsdom['equipedom']] = array (
"points" => $dom[$champsdom['equipedom']]['points']+$points,
"matchjoués" => $dom[$champsdom['equipedom']]['matchjoués']+1,
"gagnés" => $dom[$champsdom['equipedom']]['gagnés']+$gagnés,
"nuls" => $dom[$champsdom['equipedom']]['nuls']+$nuls,
"perdus" => $dom[$champsdom['equipedom']]['perdus']+$perdus,
"bp" => $dom[$champsdom['equipedom']]['bp']+ $champsdom['scoredom'],
"bc" => $dom[$champsdom['equipedom']]['bc']+ $champsdom['scorext'],
"diff" => $dom[$champsdom['equipedom']]['diff']+ $champsdom['scoredom']-$champsdom['scorext']);
}
//-------------------------Equipes extérieures--------------------
$reponsext = mysql_query("SELECT * FROM matchs WHERE journee='".$nb."' AND equipext='".$nom['nomeq']."'") or die(mysql_error());
$champsext = mysql_fetch_array($reponsext);
if ($champsext['equipext']==$nom['nomeq'])
{
if($champsext['scorext'] > $champsext['scoredom'])
{$points=3;$gagnés=1;$nuls=0;$perdus=0;}
if($champsext['scorext'] == $champsext['scoredom'])
{$points=1;$gagnés=0;$nuls=1;$perdus=0;}
if($champsext['scorext'] < $champsext['scoredom'])
{$points=0;$gagnés=1;$nuls=0;$perdus=1;}
$ext[$champsext['equipext']] = array (
"points" => $ext[$champsext['equipext']]['points']+$points,
"matchjoués" => $ext[$champsext['equipext']]['matchjoués']+1,
"gagnés" => $ext[$champsext['equipext']]['gagnés']+$gagnés,
"nuls" => $ext[$champsext['equipext']]['nuls']+$nuls,
"perdus" => $ext[$champsext['equipext']]['perdus']+$perdus,
"bp" => $ext[$champsext['equipext']]['bp']+ $champsext['scorext'],
"bc" => $ext[$champsext['equipext']]['bc']+ $champsext['scoredom'],
"diff" => $ext[$champsext['equipext']]['diff']+ $champsext['scorext']-$champsext['scoredom']);
}
}
//-----------------------ajout des résultat dans une tableau---------------------------
$gen[$nom['nomeq']] = array (
"points" => $ext[$nom['nomeq']]['points'] + $dom[$nom['nomeq']]['points'],
"matchjoués" => $ext[$nom['nomeq']]['matchjoués'] + $dom[$nom['nomeq']]['matchjoués'],
"gagnés" => $ext[$nom['nomeq']]['gagnés'] + $dom[$nom['nomeq']]['matchjoués'],
"nuls" => $ext[$nom['nomeq']]['nuls'] + $dom[$nom['nomeq']]['nuls'],
"perdus" => $ext[$nom['nomeq']]['perdus'] + $dom[$nom['nomeq']]['perdus'],
"bp" => $ext[$nom['nomeq']]['bp'] + $dom[$nom['nomeq']]['bp'],
"bc" => $ext[$nom['nomeq']]['bc'] + $dom[$nom['nomeq']]['bc'],
"diff" => $ext[$nom['nomeq']]['diff'] + $dom[$nom['nomeq']]['diff']);
}
//----------------------------tri du tableau------------------------------------------------
uasort($gen, 'sort_items');
//------------------------------FIN DU CODE D'ORIGINE--------------------------------------
return $gen;
}
tablo($_POST['journeesel']);
?>


Ensuite j'ai le code qui affiche le tableau $gen comme avant mais ça ne marche plus, on me dit que le tableau n'est pas définit ou que ce n'est pas un tableau
A voir également:

1 réponse

zlatan
 
up :)
0