2015-01-04 2 views
0

내 Minecraft 서버에 대한 통계를 기록하고 내 사이트에 플레이어의 게임 통계를 표시합니다. 이미 살인과 사망을 기록하지만 지금은 기능적 살인/사망률을 얻으려고합니다. 나는 테이블에 그들에게 전화를두 PHP 변수 사이의 십진수로 표시 비율

elseif ($_GET['task'] == 'stats') { 
     $get_player = $_GET['player']; 
     $get_db = 'engine'; 
     $result = mysql_query("SELECT * FROM $get_db WHERE name = '" . mysql_real_escape_string($get_player) . "'", $link); 
      while($data = mysql_fetch_array($result)) { 
       echo '{"task":"viewstats","kills":"'; echo $data['kills']; 
           echo '","deaths":"'; echo $data['deaths']; 
           echo '","joins":"'; echo $data['joins']; 
           echo '","quits":"'; echo $data['quits']; 
           echo '","kicked":"'; echo $data['kicked']; 
       echo '"}'; 
      } 
    } 

을 - (5711 죽음이 당신에게 0.663의 K/DR을 줄 것이다 3789 죽이기 예) 나는/진수 비율 형식으로 사망자가 명을 표시하려고

<td><?php echo empty($stats) ? "--" : substr($stats->kills, 0, 50); ?></td> 
     <td><?php echo empty($stats) ? "--" : substr($stats->deaths, 0, 50); ?></td> 

편집 :이 같은 위의 PHP 코드는 API 파일이며, MySQL은 이미 활성화되어 - 난 단지 비록 API의 조각을 기록했다.

echo json_encode(array(
    'task' => 'viewstats', 
    'kills' => $data['kills'], 
    'deaths' => $data['deaths'], 
    'joins'=> $data['joins'], 
    'quits' => $data['quits'], 
    'kicked' => $data['kicked'], 

    // then ratio 
    'ratio' => $data['kills']/$data['deaths'], 
)); 
+0

JSON을 이와 같이 구성한 것처럼 보입니다. 먼저 배열을 구성한 다음 인코딩하는 방법으로 ['json_encode()'] (http://php.net/manual/en/function.json-encode.php)를 사용하여 실제로 그렇게해야합니다. –

+0

'$ data [ 'kills']/$ data [ 'deaths']'당신에게 필요한 가치를 제공하지 않습니까? –

+0

'number_format()'을 사용하여 원하는 소수 자릿수를 표시하십시오. http://php.net/manual/en/function.number-format.php –

답변

1

이 작업을 수행 할 수있는 데이터베이스 연결, 테이블 이름, $ _GET 변수를 확인합니다.

0
//**Make sure this Function is declared at the top of your script.** 
function MySQLi_quickConnect() 
{ 
    $host  = 'somewebsite.db.120327161.hostedresource.com'; //or 'http://localhost' 
    $username = '<YOUR USERNAME>'; 
    $password = '<YOUR PASSWORD>'; 
    $database = '<YOUR DATABASES NAME>'; 

    $db = new MySQLi($host,$username,$password,$database); 
    $error_message = $db->connect_error; 
    if($error_message != NULL){die("Error:" . $error_message . "<br>" . "Occured in function 
             MySQLi_quickConnect");} 
    return $db; 
} 

//Replace your code with this: 

elseif($_GET['task'] == 'stats') { 
$get_player = $_GET['player']; 
$get_db = 'engine'; 

$mysqli = MySQLi_quickConnect(); 
$query = ('SELECT kills, deaths, FROM ? WHERE name = ? '); 
if ($stmt = $mysqli->prepare($query)) { 
    $stmt->bind_param("ss", $get_db, $get_player); 
    $stmt->execute(); 
    $stmt->bind_result($kills, $deaths); 
} 
while ($stmt->fetch()) { 
    $kdr = $kills/$deaths; 
    echo "You have a K/DR of " . $kdr . "<br>"; 
} 

$stmt->close(); 
} 

참고 :