不断从php和mysql获取错误

不断从php和mysql获取错误,php,html,mysql,json,uuid,Php,Html,Mysql,Json,Uuid,我试图创建一个网站,从minecraft服务器创建的数据库中获取统计数据。我在将uuid插入mojangs API并以用户名的形式出现时遇到了问题。当您第一次访问该站点时,它会起作用,但当您刷新该站点时,会出现错误: 在我刷新它之后,名字从表中消失了,它给了我这些错误。我真的需要尽快解决这个问题 <code> <!DOCTYPE html> <html> <head> <style> body { font-family:

我试图创建一个网站,从minecraft服务器创建的数据库中获取统计数据。我在将uuid插入mojangs API并以用户名的形式出现时遇到了问题。当您第一次访问该站点时,它会起作用,但当您刷新该站点时,会出现错误:

在我刷新它之后,名字从表中消失了,它给了我这些错误。我真的需要尽快解决这个问题

<code>
<!DOCTYPE html>
<html>
<head>
<style>
body {
    font-family: arial;
    background-color: #3be5de;
}
table, th, td {
    border: 1px solid black;
    border-collapse: collapse;
    text-align: center;
}
</style>
<title>SuperBlaze27 Players-Server Stats</title>
<!--<link>-->
</head>
<body>
<div style="font-family: arial; color: #23a09b;">
<h1>SuperBlaze27 Minecraft Server Player Stats</h1>
<h3>Player joins</h3>
</div>
<?php
$servername = "localhost";
$username = "stats";
$password = "***";
$dbname = "stats3";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM `stats3_joins`";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
echo "<table><tr><th>Uniqe Player ID</th><th>Username</th><th>Player Head</th><th>Times Joined</th></tr>

";
    while($row = $result->fetch_assoc()) {
$uuid = $row["uuid"];
$uuid = str_replace('-', '', $uuid);
$json_response = file_get_contents("https://sessionserver.mojang.com/session/minecraft/profile/" . $uuid . "");
$data = json_decode($json_response);
        print "<tr><td>#" . $row["id"]. "</td><td> ". $data->name . "</td><td><img src='https://crafatar.com/avatars/" . $uuid . "?size=32'/img></td><td>" . $row["value"]. "</td></tr>";
    }
} else {
    echo "0 results";
}
$conn->close();
        echo "</table>";


// echo "Player name:".$data->name;

?>

</body>
</html>

身体{
字体系列:arial;
背景色:#3be5de;
}
表,th,td{
边框:1px纯黑;
边界塌陷:塌陷;
文本对齐:居中;
}
SuperBlaze27玩家服务器统计
SuperBlaze27 Minecraft服务器玩家统计信息
玩家加入

顺便说一句,我用***替换了密码,但在真实的密码中它可以工作,所以这不是问题所在。提前这么多时间

429 HTTP错误意味着您每秒向服务器发送的请求太多(在您的情况下是sessionserver.mojang.com)


您必须处理一个限制这一事实是意料之中的,因为从MySQL读取数据非常快,并且您的服务器每秒都会发出许多请求来获取数据。您需要在查询之前添加延迟来解决这个问题(这反过来会降低页面加载速度)。因此,我还建议您缓存接收到的数据,不要每次请求页面时都再次下载该数据。

您可以应用一致的格式吗?像pastebin这样的网站可以提供帮助。@mateusz sip您确定
$json\u response=file\u get\u contents('https://sessionserver.mojang.com/session/minecraft/profile/“$uuid”。”返回有效响应?您将其视为有效的数据源,而不检查其行为。@mateusz sip hmmmm这是什么意思?我怎么修?好的,谢谢!我真的找到了一个有用的网站!现在我使用的是api.mojang.com/user/profile/,它100%有效!
<code>
<!DOCTYPE html>
<html>
<head>
<style>
body {
    font-family: arial;
    background-color: #3be5de;
}
table, th, td {
    border: 1px solid black;
    border-collapse: collapse;
    text-align: center;
}
</style>
<title>SuperBlaze27 Players-Server Stats</title>
<!--<link>-->
</head>
<body>
<div style="font-family: arial; color: #23a09b;">
<h1>SuperBlaze27 Minecraft Server Player Stats</h1>
<h3>Player joins</h3>
</div>
<?php
$servername = "localhost";
$username = "stats";
$password = "***";
$dbname = "stats3";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM `stats3_joins`";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
echo "<table><tr><th>Uniqe Player ID</th><th>Username</th><th>Player Head</th><th>Times Joined</th></tr>

";
    while($row = $result->fetch_assoc()) {
$uuid = $row["uuid"];
$uuid = str_replace('-', '', $uuid);
$json_response = file_get_contents("https://sessionserver.mojang.com/session/minecraft/profile/" . $uuid . "");
$data = json_decode($json_response);
        print "<tr><td>#" . $row["id"]. "</td><td> ". $data->name . "</td><td><img src='https://crafatar.com/avatars/" . $uuid . "?size=32'/img></td><td>" . $row["value"]. "</td></tr>";
    }
} else {
    echo "0 results";
}
$conn->close();
        echo "</table>";


// echo "Player name:".$data->name;

?>

</body>
</html>