2014-02-05 73 views
0

我有一個用戶表和高爾夫錦標賽的分數表爲這些用戶。當用戶參加錦標賽時,他會使用表單在結果表中記錄一個分數。我想顯示一個結果表格,顯示用戶的完整列表和比賽中的分數。表格中有八列分數 - 每個球場都有一列。我正在努力用PHP代碼來顯示結果分數。如果玩家已經玩過,他的得分正確顯示,但是如果表中的下一名玩家沒有玩過他的得分,則表示爲表中他之上的玩家的得分。這繼續下去,直到遇到真正的分數。我試圖找到沒有成功的答案。這是我的代碼,只有一門課程。如果我能克服這個問題,我相信這些代碼將適用於其他課程。foreach loops給出意想不到的結果

$query = "SELECT * FROM emg_users ORDER BY user_login"; 
$results=mysql_query($query); 
$results_array = array(); 
while ($row = mysql_fetch_array($results)) { 
$results_array[$row['ID']] = $row; 
} 
    foreach ($results_array as $id => $record) { 
    $player = $record['user_login']; 
?> 
     <tr> 
      <td class="padded_c" nowrap="nowrap"><?php echo $player;?></td> <!-- Player name --> 
<?php 
    $query = "SELECT * FROM 0_tournament_test WHERE player = '".$player."' AND course = 'St_Andrews'"; 
    $results=mysql_query($query); 
    $results_array = array(); 
    while ($row = mysql_fetch_array($results)) { 
    $results_array[$row['id']] = $row; 
    } 
    foreach ($results_array as $id => $record) { 
    $pplayer = $record['player']; 
     if ($pplayer = $player) { 
      $sta = $record['score']; 
      } 
     else { 
      unset($sta); 
      } 
    $id++; 
    } 
?> 
     <td class="padded_c" nowrap="nowrap"></td> 
     <td nowrap="nowrap"><?php echo $sta;?></td> 
     <td nowrap="nowrap"><?php echo $rsg;?></td> 
     <td nowrap="nowrap"><?php echo $bet;?></td> 
     <td nowrap="nowrap"><?php echo $oak;?></td> 
     <td nowrap="nowrap"><?php echo $kia;?></td> 
     <td nowrap="nowrap"><?php echo $cng;?></td> 
     <td nowrap="nowrap"><?php echo $mer;?></td> 
     <td nowrap="nowrap"><?php echo $oly;?></td> 
     <td nowrap="nowrap"><?php echo $allshots;?></td> 
     <td nowrap="nowrap"><?php echo $sss;?></td> 
     <td nowrap="nowrap"><?php echo '';?></td> 
    </tr> 
<?php 
$id++; 
} 
?> 
    </table> 

回答

1

我想你忘記了一些登錄...

變化不大代碼: -

if ($pplayer == $player) { 
    $sta = $record['score']; 
} 
else 
{ 
    unset($sta); 
} 

添加此條件下,以你的代碼...

+0

仍然沒有工作遵循這個修正案,但感謝回覆 –

+0

你的意思是'unset($ sta);'???? 您是否想要使用'$ sta =''''來清空'$ sta'值.. –

+0

或者您想總結玩家的分數... 要比添加'$ sta + = $ record ['score' ];' –

相關問題