0
您好,我正在尝试设置一个游戏投注网站。我使用openId将数据从蒸汽传输到我的网站。但是这个“bug”发生在前一阵子。我无法为每个连接的新用户编写新行。它在2天前工作。我不认为我改变了任何东西,但它不起作用,所以必须改变。我的代码很长,所以我只会发布我认为有问题的部分。 所以它就是这样。正如我所说,它应该为新用户编写新行。PHP,openId - 无法写入mysql
if($openid->validate())
{
$id = $openid->identity;
// identity is something like: http://steamcommunity.com/openid/id/76561197960435530
// we only care about the unique account ID at the end of the URL.
$ptn = "/^http:\/\/steamcommunity\.com\/openid\/id\/(7[0-9]{15,25}+)$/";
preg_match($ptn, $id, $matches);
echo "Sucesfully logged in (steamID: $matches[1])\n";
$url = "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=$_STEAMAPI&steamids=$matches[1]";
$json_object= file_get_contents($url);
$json_decoded = json_decode($json_object);
foreach ($json_decoded->response->players as $player)
{
$sql_fetch_id = "SELECT * FROM users_steam WHERE steamid = $player->steamid";
$query_id = mysqli_query($conn,$sql_fetch_id);
if(mysqli_num_rows($query_id)==0){
$sql_steam = "INSERT INTO users_steam (name, steamid, avatar, loggedin, tradeurl) VALUES ('$player->personaname', '$player->steamid', '$player->avatar',' ',' ')";
mysqli_query($conn,$sql_steam);}
$_SESSION["id"] = $player->steamid;
$_SESSION["name"] = $player->personaname;
$_SESSION["url"] = $player->profileurl;
$_SESSION["smallavatar"] = $player->avatar;
$_SESSION["mediumavatar"] = $player->avatarmedium;
$_SESSION["largeavatar"] = $player->avatarfull;
}
}
编辑:我忘了提及它没有显示任何错误或任何东西。它只是没有反应,行为就像它通过。例如会话索引是在玩家登录后设置的,它只是不写入mysql。
究竟是什么问题?你可以在更多的上下文中编辑,以及可能的PHP服务器错误日志? –
它不会引发任何错误。等待让我检查php错误日志 –
我检查错误日志,没有错误。我真的不知道发生了什么事。 –